"Découvrez d'autres choses que vous pouvez faire avec les sous-chaînes :"

8) Comment puis-je trouver une sous-chaîne ?

Les méthodes indexOf et lastIndexOf vous permettent de rechercher des chaînes dans des chaînes. Il existe 4 versions de ces méthodes :

La méthode indexOf recherche une chaîne dans une chaîne spécifiée. La méthode peut rechercher la chaîne à partir du début de la chaîne spécifiée ou à partir d'un index (la deuxième méthode). Si la chaîne est trouvée, la méthode renvoie l'index de son premier caractère ; s'il n'est pas trouvé, il renvoie -1.

Méthode(s) Exemples)
int indexOf(String str)
String s = "Good news, everyone!";
int index = s.indexOf ("ne");
Résultat:

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

index == 16

"La méthode lastIndexOf recherche la chaîne spécifiée à partir de la fin de notre chaîne ! Cette méthode peut rechercher une chaîne à partir de la toute fin de notre chaîne ou à partir d'un index (la deuxième méthode). Si la chaîne est trouvée, alors la méthode retourne l'indice de son premier caractère ; s'il n'est pas trouvé, alors elle retourne -1."

Méthode(s) Exemples)
int lastIndexOf(String str)
String s = "Good news, everyone!";
int index = s.lastIndexOf("ne");
Résultat:

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

index == 5

9) Comment remplacer une partie d'une chaîne par une autre chaîne ?

"Il existe trois méthodes pour cela."

La méthode replace remplace toutes les occurrences d'un caractère particulier par un autre caractère.

La  méthode replaceAll  remplace toutes les occurrences d'une sous-chaîne par une autre chaîne.

La  méthode replaceFirst  remplace la première occurrence d'une sous-chaîne transmise par une chaîne spécifiée.

Méthode(s) Exemples)
String replace(char oldChar, char newChar)
String s = "Good news, everyone!";
String s2 = s.replace>('o', 'a');
Résultat:

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

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

s2 == "Good _ws everyone!";

"Mais vous devez être prudent avec celles-ci. Dans les deux dernières méthodes ( replaceAll et replaceFirst ), la chaîne que nous recherchons est transmise comme une expression régulière, pas comme une simple chaîne. Mais j'en reparlerai plus tard. "