Removendo Valores Numéricos de Strings Java

JavaBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como remover valores numéricos de uma String em Java. Strings em Java podem conter caracteres alfanuméricos e símbolos especiais. Portanto, às vezes é necessário filtrar a String para obter apenas os alfabetos. Neste laboratório, usaremos o método replaceAll(), que recebe dois argumentos: uma expressão regular para filtrar a String e uma String de substituição.

Criar um novo arquivo Java

Navegue até o diretório ~/project e crie um novo arquivo Java usando o seguinte comando:

touch RemoveNumericValues.java

Definir o método main()

Abra o arquivo RemoveNumericValues.java em um editor de texto e defina o método main() da seguinte forma:

public class RemoveNumericValues {
    public static void main(String[] args) {
        String str = "House123sector4";
        System.out.println("Original String: " + str);
    }
}

Usar regex para remover valores numéricos

Nesta etapa, usaremos Regex para remover os valores numéricos da String.

public class RemoveNumericValues {
    public static void main(String[] args) {
        String str = "House123sector4";
        System.out.println("Original String: " + str);

        str = str.replaceAll("[^A-Za-z]", "");
        System.out.println("String with only Alphabets: " + str);
    }
}

No código acima, usamos o método replaceAll() para substituir todos os caracteres, exceto as letras, da String str. A regex [A-Za-z] corresponderá a todos os caracteres de A a Z e de a a z.

Usar regex para remover dígitos

Nesta etapa, usaremos Regex para remover os dígitos da String.

public class RemoveNumericValues {
    public static void main(String[] args) {
        String str = "House123sector4";
        System.out.println("Original String: " + str);

        str = str.replaceAll("\\d", "");
        System.out.println("String with only Alphabets: " + str);
    }
}

No código acima, usamos o método replaceAll() para substituir todos os dígitos da String str. A regex \\d corresponderá a todos os dígitos presentes na String.

Usar regex para remover dígitos (método alternativo)

Nesta etapa, usaremos outra Regex para remover os dígitos da String.

public class RemoveNumericValues {
    public static void main(String[] args) {
        String str = "House123sector4";
        System.out.println("Original String: " + str);

        str = str.replaceAll("[0-9]", "");
        System.out.println("String with only Alphabets: " + str);
    }
}

No código acima, usamos o método replaceAll() para substituir todos os dígitos da String str. A regex [0-9] corresponderá a todos os dígitos presentes na String.

Compilar e executar o código

Salve as alterações feitas no arquivo RemoveNumericValues.java, abra o terminal, navegue até o diretório do projeto e insira o seguinte comando para compilar o código:

javac RemoveNumericValues.java

Após o código ser compilado com sucesso, insira o seguinte comando para executar o código:

java RemoveNumericValues

A saída do código será exibida no terminal.

Modificar a String de entrada

Para testar o código em diferentes strings de entrada, modifique a String str para qualquer valor de sua escolha.

public class RemoveNumericValues {
    public static void main(String[] args) {
        String str = "Hello%&$3World";
        System.out.println("Original String: " + str);

        str = str.replaceAll("[^A-Za-z]", "");
        System.out.println("String with only Alphabets: " + str);
    }
}

Testar o método alternativo

Modifique a versão anterior do código para testar o método alternativo da seguinte forma:

public class RemoveNumericValues {
    public static void main(String[] args) {
        String str = "Hello%&$3World";
        System.out.println("Original String: " + str);

        str = str.replaceAll("[0-9]", "");
        System.out.println("String with only Alphabets: " + str);
    }
}

Testar o segundo método

Modifique a versão anterior do código para testar o segundo método da seguinte forma:

public class RemoveNumericValues {
    public static void main(String[] args) {
        String str = "Hello%&$3World";
        System.out.println("Original String: " + str);

        str = str.replaceAll("\\d", "");
        System.out.println("String with only Alphabets: " + str);
    }
}

Resumo

Neste laboratório, aprendemos como remover valores numéricos de uma String em Java. Usamos o método replaceAll() juntamente com diferentes Regex (Expressões Regulares) para filtrar a String e obter apenas os alfabetos. Também aprendemos como testar o código com diferentes strings de entrada.