element von string vergleichen
-
string text;
string temp=" ";
wieso kann ich folgendes nicht machen:for (int i=0; i<text.length(); i++) { if (text[i]==temp) { Blabla; } }
meldung in if-Zeile:
Illegal structure operation.
-
Gute Frage.
Weil es noch eine andere Möglichkeit gibt?!if(Text.Pos(temp) > 0) { }
Kommt jetzt halt auf den Spezialfall an. Normalerweise geht das so recht gut (siehe oben). Wenn du jetzt aber wirklich jeden einzelnen Buchstaben vergleichen willst:
for (int i = 0; i < text.Length(); i++)
{
if(text.IsDelimiter(" ", i) == true)
{
//Bsp: text.Delete(i,1);
}
}
-
Danke!
-
Eigentlich ist das keine besonders gute Frage.
Du kannst einem einzelnen Char nun mal keine Zeichenkette zuweisen, auch nicht für einen Vergleich, sondern eben nur ein einzelnes Zeichen.
if (text[j] == temp[1]) Blabla;
Wenn es tatsächlich nur um einzelne Zeichen geht solltest du temp gleich als Char statt als String deklarieren, oder du vergleichst direkt.
char temp = ' '; if (text[j] == temp) Blabla; if (text[j] == ' ') Blabla;
Siehe auch hier.