Substituir Carácter em String em Java

Rupam Yadav 12 outubro 2023
  1. String.replace() para Substituir um único caractere numa string Java
  2. String.replaceFirst() para substituir apenas a primeira ocorrência de um caractere numa string Java
  3. String.replace() para substituir dois caracteres de uma string em Java
Substituir Carácter em String em Java

Neste tutorial, iremos introduzir dois métodos, replace() e replaceFirst() da classe String, substituindo um ou mais caracteres de uma determinada string em Java.

String.replace() para Substituir um único caractere numa string Java

Podemos utilizar o método replace() para substituir um único carácter numa string. replace(oldChar, newChar) exige dois argumentos: o primeiro argumento é o carácter que queremos substituir, e o segundo argumento é um novo carácter que é para substituir o carácter antigo.

No exemplo seguinte, temos uma string oldString1 que contém uma declaração com um &, mas queremos substituí-la por um coma. Isto pode ser feito simplesmente chamando o método replace() utilizando oldString1 e passando & e um coma.

Uma coisa importante a notar aqui é que há espaço em branco antes de & em replace(). É porque há espaço em branco à volta do nosso caractere alvo. Para eliminar o espaço em branco, substituiremos tanto o espaço em branco & como o espaço em branco por um coma.

public class ReplaceCharString {
  public static void main(String[] args) {
    String oldString1 = "My name is Sam & I am a software developer.";

    String newString1 = oldString1.replace(" &", ",");

    System.out.println(newString1);
  }
}

Resultado:

My name is Sam, I am a software developer.

String.replaceFirst() para substituir apenas a primeira ocorrência de um caractere numa string Java

Pode haver mais do que uma ocorrência do mesmo carácter que queremos substituir numa string. Se quisermos substituir apenas a primeira ocorrência do caractere e ignorar outras ocorrências depois disso. Isto pode ser feito utilizando outro método da classe String, que é replaceFirst(). Como o seu nome sugere, substitui apenas o primeiro carácter de uma string.

No exemplo, temos uma string com dois &, e só queremos substituir o primeiro por um coma como fizemos no exemplo anterior, mas ignoramos o segundo &. Assim, utilizamos oldString.replaceFirst(oldChar, newChar) para passar o espaço em branco com & e um coma. A saída mostra o resultado final.

public class ReplaceCharString {
  public static void main(String[] args) {
    String oldString1 =
        "I have used multiple Internet providers & but my current provider is AT&T.";

    String newString1 = oldString1.replaceFirst(" &", ",");

    System.out.println(newString1);
  }
}

Resultado:

I have used multiple Internet providerss, but my current provider is AT&T.

String.replace() para substituir dois caracteres de uma string em Java

No último exemplo deste tutorial, utilizaremos replace() para substituir dois caracteres diferentes. Em oldString1, queremos substituir o caracter maiúsculo (V) por um caracter minúsculo (v), e o último caracter da string, coma , por ..

Podemos fazer isto numa única linha, juntando dois métodos replace() e depois passando os caracteres próprios.

public class ReplaceCharString {
  public static void main(String[] args) {
    String oldString1 = "My name is Sam and I am a Software DeVeloper,";

    String newString1 = oldString1.replace("V", "v").replace(",", ".");

    System.out.println(newString1);
  }
}

Resultado:

My name is Sam and I am a Software Developer.
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Artigo relacionado - Java String

Artigo relacionado - Java Char