CodeGym /Blogue Java /Random-PT /Método Java String replace()
John Squirrels
Nível 41
San Francisco

Método Java String replace()

Publicado no grupo Random-PT

Quais são os métodos replace () comuns da classe String em Java?

A classe String fornece quatro tipos diferentes de métodos replace() em Java. Cada um dos métodos aborda um caso de uso específico. Seus nomes estão listados abaixo:
  1. substituir(char, char)
  2. substituir(String, String)
  3. substituirTodos(String, String)
  4. substituirPrimeiro(String, String)
Seguindo com o post, veremos como cada método funciona. Também examinaremos a necessidade de usar o acima em diferentes casos de uso.

Método Java String replace()

O método Java String replace() é usado para substituir um caractere especificado pelo caractere fornecido, ambos passados ​​como parâmetros. Este método é adequado para substituir qualquer caractere em uma String por algum outro caractere de sua escolha.

Cabeçalho do Método


public String replace(char oldCharacter, char newCharacter)

Parâmetros do método

O método usa dois parâmetros ou argumentos do tipo 'char'.
  • char oldCharacter contém o caractere a ser substituído.

  • char newCharacter contém o caractere que será usado no lugar do oldCharacter.

Tipo de retorno

O método String replace retorna a string atualizada após a substituição do caractere desejado.

Exemplo

Vamos dar uma olhada em diferentes exemplos simples para entender como esse método funciona.

public class Driver {

	public static void main(String[] args) {

	      String myString = "An apple a day, keeps the doctor away!";
		System.out.println("Original Sentence: \t\t\t" + myString);

		// Example 1 using String replace(char, char)
		char oldCharacter = 'a'; // replacing character
		char newCharacter = 'A'; // character to be replaced
            String updatedString = myString.replace(oldCharacter, newCharacter);    
		System.out.println("After replacing '" + oldCharacter + "' with '" + 
		// 'a' is replaced and not with 'A' as the method is case sensitive
		newCharacter + "': \t\t" + updatedString);
		
		// Example 2 using String replace(String, String)
		String oldString = "apple";
		String newString = "orange";
		// using the method String replace		
            String updatedString1 = myString.replace(oldString, newString); 
            System.out.println("Replacing '" + oldString + "' with '" + 
        		newString + "': \t" + updatedString1 + "\n");
	}
}

Saída

Frase Original: Uma maçã por dia, afasta o médico! Depois de substituir 'a' por 'A': An Apple A dAy, mantém o médico afastado! Substituir 'maçã' por 'laranja': Uma laranja por dia mantém o médico longe!
Observação: é recomendável familiarizar-se com expressões regulares, também conhecidas como regex, antes de prosseguir.

Método Java String replaceAll()

O método Java String replaceAll() substitui TODAS as ocorrências de uma expressão regular passada como parâmetro pela String desejada . Isso significa que cada cópia do regex é atualizada pela string de substituição.

Cabeçalho do Método


public String replaceAll(String regularExpression, String replacementStr)

Parâmetros do método

Este método recebe dois argumentos do tipo 'String'.
  • String regularExpression contém o regex (padrão) a ser substituído.

  • String replaceStr é a String que será usada no lugar do regex.

Tipo de retorno

O método retorna uma nova string após substituir todas as ocorrências do regex.

Exemplo

Esse método é comumente usado para atualizar registros de dados enormes. Para uma compreensão mais profunda, vamos ver diferentes exemplos do método replaceAll() .

public class Driver1 {

	public static void main(String[] args) {

		String myString = "Mastering a programming language begins with great logic building!";
		System.out.println("Original Sentence: \t\t\t" + myString);

		String regex = "[\sa]"; // This regex is used to remove all spaces and a(s) in the string
		String replacementStr = "";
		// using the method String replaceAll(); to remove ALL spaces
		System.out.println("After replacing \"" + regex + "\" with \"" + replacementStr + "\": \t"
				+ myString.replaceAll(regex, replacementStr) + "\n");
	}
}

Saída

Frase Original: Dominar uma linguagem de programação começa com uma grande construção lógica! Depois de substituir "[ a]" por "": Msteringprogramminglngugebeginswithgretlogicbuilding!

Método Java String replaceFirst ()

O método Java String replaceFirst() substitui a APENAS PRIMEIRA ocorrência do regex passado para este método.

Cabeçalho do Método


public String replaceFirst(String regularExpression, String replacementStr)

Parâmetros do método

Este método recebe dois argumentos do tipo 'String'.
  • String regularExpression contém o regex (padrão) a ser substituído.

  • String replaceStr é a String que será usada no lugar do regex.

Tipo de retorno

O método retorna uma nova string após substituir apenas a PRIMEIRA ocorrência do regex.

Exemplo

Este método pode ser usado quando você deseja atualizar apenas o primeiro registro encontrado do seu argumento correspondente. Vamos explorar como isso funciona no exemplo abaixo.

public class Driver2 {
	
	public static void main(String[] args) {

		String myString = "Good Morning. You wonders of Nature. Today is a great day to be happy.";
		System.out.println("Original Sentence: \t\t" + myString);

		String regex = "\\."; // regex to update period / full stop
		String replacementStr = "!";
		// using the method String replaceFirst();
		// to remove first period(.) with exclamation(!) mark
		System.out.println("After replacing '" + regex + "' with '" + replacementStr + "': \t"
				+ myString.replaceFirst(regex, replacementStr));
	}
}

Saída

Frase original: Bom dia. Você maravilhas da natureza. Hoje é um ótimo dia para ser feliz. Depois de substituir '\.' com '!': Bom dia! Você maravilhas da natureza. Hoje é um ótimo dia para ser feliz.

Conclusão

Esses foram alguns princípios básicos do uso dos métodos replace() em Java. Como sempre, é altamente recomendável aprender pela prática. Até a próxima vez, continue aprendendo e continue crescendo!
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION