"Kolla in några andra saker du kan göra med delsträngar:"

8) Hur hittar jag en delsträng?

Metoderna indexOf och lastIndexOf låter dig söka efter strängar inom strängar . Det finns 4 versioner av dessa metoder:

Metoden indexOf letar efter en sträng i en specificerad sträng. Metoden kan söka efter strängen från början av den angivna strängen, eller från något index (den andra metoden). Om strängen hittas returnerar metoden indexet för dess första tecken; om den inte hittas returnerar den -1.

Metod(er) Exempel
int indexOf(String str)
String s = "Good news, everyone!";
int index = s.indexOf ("ne");
Resultat:

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

index == 16

" LastIndexOf- metoden söker efter den angivna strängen baklänges från slutet av vår sträng! Den här metoden kan söka efter en sträng från slutet av vår sträng, eller från något index (den andra metoden). Om strängen hittas, metoden returnerar indexet för dess första tecken; om det inte hittas returnerar det -1."

Metod(er) Exempel
int lastIndexOf(String str)
String s = "Good news, everyone!";
int index = s.lastIndexOf("ne");
Resultat:

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

index == 5

9) Hur ersätter jag en del av en sträng med en annan sträng?

"Det finns tre metoder för detta."

Ersätt - metoden ersätter alla förekomster av ett visst tecken med ett annat tecken.

Metoden  replaceAll  ersätter alla förekomster av en delsträng med en annan sträng.

Metoden  replaceFirst  ersätter den första förekomsten av en godkänd delsträng med en specificerad sträng.

Metod(er) Exempel
String replace(char oldChar, char newChar)
String s = "Good news, everyone!";
String s2 = s.replace>('o', 'a');
Resultat:

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

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

s2 == "Good _ws everyone!";

"Men du måste vara försiktig med dessa. I de två sista metoderna ( replaceAll och replaceFirst ) skickas strängen vi letar efter som ett reguljärt uttryck, inte en enkel sträng. Men jag ska prata om det senare."