Arbeiten mit Strings
-
Hallo zusammen,
ich möchte gerne einen matching-Algorithmus implementieren, der einen als String vorliegenden Text auf einen anderen String hin untersucht und alle Treffer in einer Datenstruktur abspeichert.
Leider ist es in Java nicht so ohne Weieters möglich, wie beispielsweise in C++ durch einen String zu iterieren. Daher frage ich mich, wie ich am besten auf die einzelnen Zeichen zugreifen muss, da ich mindestens einmal auf jedes Zeichen des Textes zugreifen muss. Das gleiche gilt auch für den Suchstring.
1.) Würdet ihr mir empfehlen, den kompletten Text per toCharArray() in ein char-Array zu kopieren und dann intern damit zu arbeiten?
2.) Sollte man dafür einen StringTokenizer verwenden? Eher nicht, oder?
3.) Gibt es vielleicht noch eine viel bessere Möglichkeit?
Vielen Dank
lg, freakC++
-
freakC++ schrieb:
Leider ist es in Java nicht so ohne Weieters möglich, wie beispielsweise in C++ durch einen String zu iterieren.
Mit charAt kannst du doch durch den String iterieren.
Oder indexOf(String, startIndex) ist wahrscheinlich noch besser zu gebrauchen für deinen Algorithmus.
-
Wenn es nur um die Iteration geht:
for(char c : string.toCharArray()){ System.out.print(c); }
-
http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#indexOf%28java.lang.String,%20int%29 oder direkt RegEx.