Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Memo/Richedit durchsuchen & kopieren (https://www.delphipraxis.net/113538-memo-richedit-durchsuchen-kopieren.html)

Counter909 14. Mai 2008 14:06

Re: Memo/Richedit durchsuchen & kopieren
 
ja ok...aber wie such in dann ein wort mit "pos" in einer "Line" ?
pos gibt doch nur ein integer-wert wieder, an welcher Position das wort steht eben ^^

Counter909 15. Mai 2008 18:13

Re: Memo/Richedit durchsuchen & kopieren
 
wenn ich die Position meines gesuchten wortes mit

"t:= pos('gesuchtetext',form1.richedit1.Lines.Text)"

herausfinde...woher weiß ich dann, in welcher Zeile das ist ? (lines[?]) ?
denn T wäre in diesem Fall ja eine Integer-Zahl!

Blackheart 16. Mai 2008 21:20

Re: Memo/Richedit durchsuchen & kopieren
 
Du gehst doch sicherlich deinen Text mit einer Schleife durch
lines[i] liefert dir dann die entsprechende Zeile.

wazup 16. Mai 2008 22:10

Re: Memo/Richedit durchsuchen & kopieren
 
Hi

TRegExpr, for-Schleife

Counter909 17. Mai 2008 10:37

Re: Memo/Richedit durchsuchen & kopieren
 
die position kann ich dann ja so erhalten:

Delphi-Quellcode:
for Index := Memo2.Lines.Count - 1 downto 0 do
      begin
        Position := Pos(form1.Edit1.Text, Memo2.Lines[Index]);
        if Position > 0 then showmessage('+inttostr(position)+''
      end;

so dann hab ich ja mein Feld wo ich eingeben kann, wieviele Zeilen kopiert werden sollen, also

Delphi-Quellcode:
n:=edit1.text

logischerweise um kann ich dann doch "position+n", sodass ich die endzeile habe, bis wo kopiert werden soll, aber

Delphi-Quellcode:
copy(memo2.Lines.Text,?,??);}
aber hier werden ja nur nur die "Pos" werte verlangt und keine zeile :-(

Matze 17. Mai 2008 10:53

Re: Memo/Richedit durchsuchen & kopieren
 
Hallo,

du hast doch deinen Zeilen-Index "Index" und die Position des Wortes in dieser Zeile "Position".

Dann kannst du aus Memo2.Lines[Index] mit Delphi-Referenz durchsuchenCopy, "Position" und "n" doch das herauskopieren, was du möchtest:

Delphi-Quellcode:
Copy(Memo2.Lines[Index], Position, n);
Nur solltest du "Index" nicht direkt verwenden, sondern in der Schleife einer anderen Variable diesen Wert zuweisen, denn nach der Schleife könnte "Index" undefiniert sein. Das habe ich kürzlich gelernt und wusste es davor auch nicht:

Delphi-Quellcode:
for ...
  if Position > 0 then
    RowIndex := Index;

// ...
Dann nimmst du als 2. Copy-Parameter "RowIndex".

Grüße

Blackheart 17. Mai 2008 19:42

Re: Memo/Richedit durchsuchen & kopieren
 
Zitat:

Zitat von Matze
Hallo,

du hast doch deinen Zeilen-Index "Index" und die Position des Wortes in dieser Zeile "Position".

Dann kannst du aus Memo2.Lines[Index] mit Delphi-Referenz durchsuchenCopy, "Position" und "n" doch das herauskopieren, was du möchtest:

Delphi-Quellcode:
Copy(Memo2.Lines[Index], Position, n);
Nur solltest du "Index" nicht direkt verwenden, sondern in der Schleife einer anderen Variable diesen Wert zuweisen, denn nach der Schleife könnte "Index" undefiniert sein. Das habe ich kürzlich gelernt und wusste es davor auch nicht:

Delphi-Quellcode:
for ...
  if Position > 0 then
    RowIndex := Index;

// ...
Dann nimmst du als 2. Copy-Parameter "RowIndex".

Grüße

Etwas viel Zitat - Delphi weisst darauf hin das der Wert nicht mehr stimmten könnte was aber nicht sein muss. :wink:

Counter909 19. Mai 2008 14:57

Re: Memo/Richedit durchsuchen & kopieren
 
soooo, danke leute, ich hab es endlich hinbekommen, auch mit meiner Eingabe wieviele Zeilen kopiert werden....wie es nun mal ist, ich hatte auch einen kleinen Fehler mit einer Variable, darum klappte was nicht :shock:


also vielen dank leute :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:20 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz