"Confira algumas outras coisas que você pode fazer com substrings:"

8) Como encontro uma substring?

Os métodos indexOf e lastIndexOf permitem pesquisar strings dentro de strings. Existem 4 versões desses métodos:

O método indexOf procura uma string em uma String especificada. O método pode procurar a string desde o início da String especificada ou a partir de algum índice (o segundo método). Se a string for encontrada, o método retorna o índice de seu primeiro caractere; se não for encontrado, retorna -1.

Métodos) Exemplos)
int indexOf(String str)
String s = "Good news, everyone!";
int index = s.indexOf ("ne");
Resultado:

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

index == 16

"O método lastIndexOf procura a string especificada de trás para frente a partir do final de nossa String! Este método pode procurar uma string desde o final de nossa String ou começando de algum índice (o segundo método). Se a string for encontrada, então o método retorna o índice de seu primeiro caracter; se não for encontrado, retorna -1."

Métodos) Exemplos)
int lastIndexOf(String str)
String s = "Good news, everyone!";
int index = s.lastIndexOf("ne");
Resultado:

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

index == 5

9) Como faço para substituir parte de uma String por outra String?

"Existem três métodos para isso."

O método replace substitui todas as ocorrências de um caractere específico por outro caractere.

O  método replaceAll  substitui todas as ocorrências de uma substring por outra string.

O  método replaceFirst  substitui a primeira ocorrência de uma substring passada por uma string especificada.

Métodos) Exemplos)
String replace(char oldChar, char newChar)
String s = "Good news, everyone!";
String s2 = s.replace>('o', 'a');
Resultado:

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

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

s2 == "Good _ws everyone!";

"Mas você precisa ter cuidado com isso. Nos dois últimos métodos ( replaceAll e replaceFirst ), a string que estamos procurando é passada como uma expressão regular, não uma string simples. Mas falarei sobre isso mais tarde."