Nur Teile eines String vergleichen
-
Hallo,
ich habe hier ein kleines Problem. Ich möchte einen Teil eines Strings in einer IF-Abfrage verwenden. Leider gibt es hier das Problem das der Vergleich nicht immer funktioniert.
Hier mal ein Beispiel:
for (int i = 0; i < RichEdit1->Lines->Count; i++) { if (RichEdit1->Lines->Strings[i] == "AGI") { ShowMessage("Erster Datensatz beginnt bei Zeile: " + IntToStr(i)); } else { ShowMessage("Noch kein Datensatz gefunden, Zeileninhalt -> " + RichEdit1->Lines->Strings[i]); ShowMessage("Zeilenposition: " + IntToStr(i) + " von " + IntToStr(RichEdit1->Lines->Count)); } }
Wenn Zeile [i] jetzt den exakten Text "AGI" enthält klappt es. Kommt aber nach "AGI" noch weiterer Text funktioniert es nicht mehr.
Hatte gehofft ich kann bei der IF-Abfrage so wie bei SQL "LIKE" oder sowas einbauen. Das klappt leider nicht.
Wäre für Hilfe dankbar.
Gruss
Maik
-
Stichwort: SubString. Such mal hier, gibts einiges
Oder noch besser:
if( RichEdit1->Lines->Strings[i].Pos("AGI") > 0 ) // gefunden
grüssle
-
Und falls es immer am Anfang der Zeile stehen muss:
if(RichEdit1->Lines->Strings[i].AnsiPos("AGI") == 1) // gefunden
-
Danke, genau das habe ich gesucht...