M
Martina
Gast
Hallo liebe Java-isten,
ich habe schon viele Threats zum Thema Wörter zählen oder String-in-String-Suche gefunden, aber leider konnte ich keine Lösung auf mein Problem übertragen.
Vielleicht kann mir jemand ja bei meiner Aufgabe helfen?
Ich möchte in einem Text (String z.B. aus einer Datei) ein bestimmtes Wort zählen. Hintergrund ist eine rudimentäre Text-Analyse. Zum Beispiel möchte ich zählen, wie oft das Wort "Java" in einem Text vorkommt.
Eine FileReader-Methode ist schon geschrieben, sodass der zu durchsuchende Text in einem String gespeichert ist.
Nachdem ich versucht habe, mit RegEx eine solche Zähl-Methode zu bauen, glaube ich, dass man es besser mit der Funktion indexOf lösen könnte. Doch genau dabei habe ich so meine Probleme.
Hier ist mein Code:
Diese Methode sollte zählen, wie oft der String "word" im String "s" vorkommt.
Leider läuft sie bis zum Absturz und liefert auch kein richtiges Ergebnis.
Kann mir jemand bitte sagen, wo mein Denkfehler liegt?
ich habe schon viele Threats zum Thema Wörter zählen oder String-in-String-Suche gefunden, aber leider konnte ich keine Lösung auf mein Problem übertragen.
Vielleicht kann mir jemand ja bei meiner Aufgabe helfen?
Ich möchte in einem Text (String z.B. aus einer Datei) ein bestimmtes Wort zählen. Hintergrund ist eine rudimentäre Text-Analyse. Zum Beispiel möchte ich zählen, wie oft das Wort "Java" in einem Text vorkommt.
Eine FileReader-Methode ist schon geschrieben, sodass der zu durchsuchende Text in einem String gespeichert ist.
Nachdem ich versucht habe, mit RegEx eine solche Zähl-Methode zu bauen, glaube ich, dass man es besser mit der Funktion indexOf lösen könnte. Doch genau dabei habe ich so meine Probleme.
Hier ist mein Code:
Java:
private int countWord(String s, String word){
int count = 0;
int start = 0;
for (int i=0; i< s.length(); i++){
if(s.indexOf(word,start) > -1)
{
System.out.println(word + " found at " + s.indexOf(word,start) + " started at " + start);
count++;
start += word.length();
}
}
return count;
}
Diese Methode sollte zählen, wie oft der String "word" im String "s" vorkommt.
Leider läuft sie bis zum Absturz und liefert auch kein richtiges Ergebnis.
Kann mir jemand bitte sagen, wo mein Denkfehler liegt?