Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Strings suchen und auf zeile prüfen (https://www.delphipraxis.net/55752-strings-suchen-und-auf-zeile-pruefen.html)

kingflo 26. Okt 2005 10:47


Strings suchen und auf zeile prüfen
 
Hallo....
Ich brächte mal hilfe.
Ich möchte gerne nach drei begriffen in einem Memo suchen z.B name, text und info
und anschließend möchte wissen ob diese Begriffe irgendwo alle in ein und derselben Zeile sind und wenn ja dann mächte ich diese Zeile in der Varbable _line schreiben.
Wenn die strings zwar alle gefunden wurden aber nur in unterschiedlichen zeilen dann soll nichts passieren sondern nur wenn sie alle in einer Zeile sind.
Es sollte auch egal sein ob die Begriffe groß oder klein geschreiben sind.

Allerdings weiß ich nicht wie ich das am bessten machen kann. hat da eventuell jemand eine gute möcglichkeit?

chrisw 26. Okt 2005 11:07

Re: Strings suchen und auf zeile prüfen
 
Delphi-Quellcode:

  for i := 0 to Memo1.Lines.Count -1 do
  if (pos('name',Memo1.Lines[i] <> 0) and
      (pos('text',Memo1.Lines[i] <> 0) and
      (pos('info',Memo1.Lines[i] <> 0) then
  begin
    _line := Memo1.Lines[i];
    break; //nicht mehr weitersuchen
  end;

kingflo 26. Okt 2005 11:19

Re: Strings suchen und auf zeile prüfen
 
:coder2: da hätte ich auch drauf kommen können :oops:

na egal es geht und ich sage hiermit Herzlich danke...

marabu 26. Okt 2005 11:52

Re: Strings suchen und auf zeile prüfen
 
Hallo Florian,

Zitat:

Zitat von kingflo
Es sollte auch egal sein ob die Begriffe groß oder klein geschreiben sind.

du solltest dann Pos(text, suchText) besser durch StrUtils.AnsiContainsText(Text, suchText) ersetzen

Grüße vom marabu

kingflo 26. Okt 2005 12:29

Re: Strings suchen und auf zeile prüfen
 
@marabu
Danke!


Ich hätte schon eigentlich die nächste frage.

Kann ich irgendwie nach Wörtern suchen die mit einem bestimmten Zeichen anfangen? z.B möchte ich mir alle wörter die mit $ anfangen ind eine SringList hinzufügen? Weiß das zufällig auch jemand auf die schnelle? Ich hatte es mit pos und posEx versucht, und zwar in dem ich versucht habe ab dem zeichen $ bis zum nächsten leerzeichen das wort zu kopieren, allerdings konnte ich mit pos nicht das $ Zeichen finden obwohl es eindeutig vorhanden war.

pszopp 26. Okt 2005 12:47

Re: Strings suchen und auf zeile prüfen
 
Mit AnsiStartsText kannst du überprüfen, ob ein String auf eine bestimmte Art und Weise beginnt.
Wenn dein String aber mehrere Wörtern enthält, musst du den String zuerst in einzelne Wörter teilen.

kingflo 26. Okt 2005 12:54

Re: Strings suchen und auf zeile prüfen
 
Wie gehe ich denn in einem Memo am bessten jedes Wort durch?
sollte man dann am bessten immer von Leerzeichen zu Leerzeichen?

marabu 26. Okt 2005 13:54

Re: Strings suchen und auf zeile prüfen
 
Schau mal hier - das könnte auch dir helfen.

marabu

chaosben 26. Okt 2005 13:57

Re: Strings suchen und auf zeile prüfen
 
Alternativ kannst du auch einen regulären Ausdruck auf den Text loslassen. Zum Beispiel:
Code:
" \$[a-zA-Z0-9]+ "
Natürlich umfasst der nicht alles ... aber nur so als Ansatz. :)

chrisw 26. Okt 2005 14:14

Re: Strings suchen und auf zeile prüfen
 
ungetestet, aber in etwa so !
Delphi-Quellcode:
var NurEinWort : String;
....
NurEinWort := '';
for i := 1 to length(Memo1.Text) do
  if Memo1.Text[i] = ' ' then
  begin
    TuEtwasMitDemWort;
    NurEinWort := '';
  end else NurEinWort := NurEinWort + Memo1.Text[i];


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:28 Uhr.
Seite 1 von 2  1 2      

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