„Schauen Sie sich einige andere Dinge an, die Sie mit Teilzeichenfolgen tun können:“

8) Wie finde ich einen Teilstring?

Mit den Methoden indexOf und lastIndexOf können Sie nach Zeichenfolgen innerhalb von Zeichenfolgen suchen. Es gibt 4 Versionen dieser Methoden:

Die indexOf- Methode sucht in einem angegebenen String nach einer Zeichenfolge. Die Methode kann vom Anfang des angegebenen Strings oder beginnend mit einem Index (die zweite Methode) nach der Zeichenfolge suchen. Wenn die Zeichenfolge gefunden wird, gibt die Methode den Index ihres ersten Zeichens zurück. Wenn es nicht gefunden wird, wird -1 zurückgegeben.

Methode(n) Beispiel(e)
int indexOf(String str)
String s = "Good news, everyone!";
int index = s.indexOf ("ne");
Ergebnis:

index == 5
int indexOf(String str, int from)
String s = "Good news, everyone!";
int index = s.indexOf ("ne", 7);
Ergebnis:

index == 16

„Die lastIndexOf- Methode sucht rückwärts vom Ende unseres Strings nach der angegebenen Zeichenfolge! Diese Methode kann vom Ende unseres Strings nach einer Zeichenfolge suchen oder von einem Index aus beginnen (die zweite Methode). Wenn die Zeichenfolge gefunden wird, dann Die Methode gibt den Index ihres ersten Zeichens zurück. Wenn dieser nicht gefunden wird, gibt sie -1 zurück.

Methode(n) Beispiel(e)
int lastIndexOf(String str)
String s = "Good news, everyone!";
int index = s.lastIndexOf("ne");
Ergebnis:

index == 17
int lastIndexOf(String str, int from)
String s = "Good news, everyone!";
int index = s.lastIndexOf("ne", 15);
Ergebnis:

index == 5

9) Wie ersetze ich einen Teil eines Strings durch einen anderen String?

„Dafür gibt es drei Methoden.“

Die Ersetzungsmethode ersetzt alle Vorkommen eines bestimmten Zeichens durch ein anderes Zeichen.

Die  Methode „replaceAll“  ersetzt alle Vorkommen einer Teilzeichenfolge durch eine andere Zeichenfolge.

Die  Methode „replaceFirst“  ersetzt das erste Vorkommen einer übergebenen Teilzeichenfolge durch eine angegebene Zeichenfolge.

Methode(n) Beispiel(e)
String replace(char oldChar, char newChar)
String s = "Good news, everyone!";
String s2 = s.replace>('o', 'a');
Ergebnis:

s2 == "Gaad news, everyane!";
String replaceAll(String regex, String replacement)
String s = "Good news, everyone!";
String s2 = s.replaceAll ("ne", "_");
Ergebnis:

s2 == "Good _ws, everyo_!";
String replaceFirst(String regex, String replacement)
String s = "Good news, everyone!";
String s2 = s.replaceFirst ("ne", "_");
Ergebnis:

s2 == "Good _ws everyone!";

„Aber Sie müssen damit vorsichtig sein. In den letzten beiden Methoden ( replaceAll und replaceFirst ) wird die gesuchte Zeichenfolge als regulärer Ausdruck und nicht als einfache Zeichenfolge übergeben. Aber darüber werde ich später sprechen.“