Eliminar valores numéricos de cadenas en Java

JavaJavaBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderá a eliminar valores numéricos de una cadena de texto en Java. Las cadenas de texto en Java pueden contener caracteres alfanuméricos y símbolos especiales. Por lo tanto, a veces es necesario filtrar la cadena de texto para obtener solo los caracteres alfabéticos. En este laboratorio, usaremos el método replaceAll(), que toma dos argumentos: una expresión regular para filtrar la cadena de texto y una cadena de texto de reemplazo.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/SystemandDataProcessingGroup(["System and Data Processing"]) java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java(("Java")) -.-> java/StringManipulationGroup(["String Manipulation"]) java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java(("Java")) -.-> java/FileandIOManagementGroup(["File and I/O Management"]) java(("Java")) -.-> java/ConcurrentandNetworkProgrammingGroup(["Concurrent and Network Programming"]) java/BasicSyntaxGroup -.-> java/output("Output") java/StringManipulationGroup -.-> java/strings("Strings") java/StringManipulationGroup -.-> java/regex("RegEx") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/class_methods("Class Methods") java/FileandIOManagementGroup -.-> java/files("Files") java/FileandIOManagementGroup -.-> java/create_write_files("Create/Write Files") java/ConcurrentandNetworkProgrammingGroup -.-> java/working("Working") java/SystemandDataProcessingGroup -.-> java/string_methods("String Methods") subgraph Lab Skills java/output -.-> lab-117447{{"Eliminar valores numéricos de cadenas en Java"}} java/strings -.-> lab-117447{{"Eliminar valores numéricos de cadenas en Java"}} java/regex -.-> lab-117447{{"Eliminar valores numéricos de cadenas en Java"}} java/class_methods -.-> lab-117447{{"Eliminar valores numéricos de cadenas en Java"}} java/files -.-> lab-117447{{"Eliminar valores numéricos de cadenas en Java"}} java/create_write_files -.-> lab-117447{{"Eliminar valores numéricos de cadenas en Java"}} java/working -.-> lab-117447{{"Eliminar valores numéricos de cadenas en Java"}} java/string_methods -.-> lab-117447{{"Eliminar valores numéricos de cadenas en Java"}} end

Crea un nuevo archivo Java

Navega hasta el directorio ~/proyecto y crea un nuevo archivo Java con el siguiente comando:

touch RemoveNumericValues.java

Define el método main()

Abre el archivo RemoveNumericValues.java en un editor de texto y define el método main() de la siguiente manera:

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

Utiliza expresiones regulares para eliminar valores numéricos

En este paso, usaremos expresiones regulares (Regex) para eliminar los valores numéricos de la cadena de texto.

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

        str = str.replaceAll("[^A-Za-z]", "");
        System.out.println("Cadena con solo letras: " + str);
    }
}

En el código anterior, hemos utilizado el método replaceAll() para reemplazar todos los caracteres excepto las letras de la cadena de texto str. La expresión regular [A-Za-z] coincidirá con todos los caracteres de A a Z y de a a z.

Utiliza expresiones regulares para eliminar dígitos

En este paso, usaremos expresiones regulares (Regex) para eliminar los dígitos de la cadena de texto.

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

        str = str.replaceAll("\\d", "");
        System.out.println("Cadena con solo letras: " + str);
    }
}

En el código anterior, hemos utilizado el método replaceAll() para reemplazar todos los dígitos de la cadena de texto str. La expresión regular \\d coincidirá con todos los dígitos presentes en la cadena.

Utiliza expresiones regulares para eliminar dígitos (método alternativo)

En este paso, usaremos otra expresión regular (Regex) para eliminar los dígitos de la cadena de texto.

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

        str = str.replaceAll("[0-9]", "");
        System.out.println("Cadena con solo letras: " + str);
    }
}

En el código anterior, hemos utilizado el método replaceAll() para reemplazar todos los dígitos de la cadena de texto str. La expresión regular [0-9] coincidirá con todos los dígitos presentes en la cadena.

Compila y ejecuta el código

Guarda los cambios realizados en el archivo RemoveNumericValues.java, abre la terminal, navega hasta el directorio del proyecto y escribe el siguiente comando para compilar el código:

javac RemoveNumericValues.java

Después de que el código se haya compilado correctamente, escribe el siguiente comando para ejecutar el código:

java RemoveNumericValues

La salida del código se mostrará en la terminal.

Modifica la cadena de entrada

Para probar el código con diferentes cadenas de entrada, modifica la cadena str a cualquier valor que desees.

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

        str = str.replaceAll("[^A-Za-z]", "");
        System.out.println("Cadena con solo letras: " + str);
    }
}

Prueba el método alternativo

Modifica la versión anterior del código para probar el método alternativo de la siguiente manera:

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

        str = str.replaceAll("[0-9]", "");
        System.out.println("Cadena con solo letras: " + str);
    }
}

Prueba el segundo método

Modifica la versión anterior del código para probar el segundo método de la siguiente manera:

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

        str = str.replaceAll("\\d", "");
        System.out.println("Cadena con solo letras: " + str);
    }
}

Resumen

En este laboratorio, hemos aprendido cómo eliminar valores numéricos de una cadena en Java. Hemos utilizado el método replaceAll() junto con diferentes expresiones regulares para filtrar la cadena y obtener solo las letras. También hemos aprendido cómo probar el código con diferentes cadenas de entrada.