"Bekijk enkele andere dingen die u kunt doen met subtekenreeksen:"

8) Hoe vind ik een subtekenreeks?

Met de methoden indexOf en lastIndexOf kunt u zoeken naar tekenreeksen binnen tekenreeksen. Er zijn 4 versies van deze methoden:

De methode indexOf zoekt naar een tekenreeks in een opgegeven tekenreeks. De methode kan naar de tekenreeks zoeken vanaf het begin van de opgegeven tekenreeks, of vanaf een bepaalde index (de tweede methode). Als de string is gevonden, retourneert de methode de index van het eerste teken; als het niet wordt gevonden, retourneert het -1.

Methode(n) voorbeeld(en)
int indexOf(String str)
String s = "Good news, everyone!";
int index = s.indexOf ("ne");
Resultaat:

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

index == 16

"De methode lastIndexOf zoekt naar de opgegeven tekenreeks achteruit vanaf het einde van onze tekenreeks! Deze methode kan zoeken naar een tekenreeks vanaf het einde van onze tekenreeks, of beginnend bij een index (de tweede methode). Als de tekenreeks wordt gevonden, dan de methode retourneert de index van het eerste teken; als het niet wordt gevonden, retourneert het -1."

Methode(n) voorbeeld(en)
int lastIndexOf(String str)
String s = "Good news, everyone!";
int index = s.lastIndexOf("ne");
Resultaat:

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

index == 5

9) Hoe vervang ik een deel van een string door een andere string?

"Hiervoor zijn drie methoden."

De vervangingsmethode vervangt alle exemplaren van een bepaald teken door een ander teken.

De  methode replaceAll  vervangt alle exemplaren van een subtekenreeks door een andere tekenreeks.

De  methode replaceFirst  vervangt het eerste exemplaar van een doorgegeven subtekenreeks door een opgegeven tekenreeks.

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

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

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

s2 == "Good _ws everyone!";

"Maar je moet hier voorzichtig mee zijn. Bij de laatste twee methoden ( replaceAll en replaceFirst ) wordt de string waarnaar we zoeken doorgegeven als een reguliere expressie, niet als een simpele string. Maar daar zal ik het later over hebben."