Regex espacios en blanco en Java

Rupam Yadav 12 octubre 2023
Regex espacios en blanco en Java

Una expresión regular o regex es una combinación de caracteres especiales que crea un patrón de búsqueda que se puede usar para buscar ciertos caracteres en cadenas. En el siguiente ejemplo, veremos cómo podemos usar varios caracteres regex para encontrar espacios en blanco en una cadena.

Encuentra espacios en blanco usando expresiones regulares en Java

Para usar el patrón de búsqueda de expresiones regulares y ver si la cadena dada coincide con la expresión regular, usamos el método estático matches() de la clase Patrón. El método matches() toma dos argumentos: el primero es la expresión regular y el segundo es la cadena que queremos hacer coincidir.

Los caracteres regex más comunes para encontrar espacios en blanco son \s y \s+. La diferencia entre estos caracteres regex es que \s representa un solo carácter de espacio en blanco, mientras que \s+ representa múltiples espacios en blanco en una cadena.

En el siguiente programa, usamos Pattern.matches() para verificar los espacios en blanco usando la expresión regular \s+ y luego la cadena con tres espacios en blanco. Luego, imprimimos whitespaceMatcher1 que da como resultado true, lo que significa que el patrón coincide y encuentra espacios en blanco.

En whitespaceMatcher2, usamos el carácter \s para identificar un solo espacio en blanco que devuelve verdadero para la cadena " ". Tenga en cuenta que las expresiones regulares distinguen entre mayúsculas y minúsculas y que \S es diferente de \s.

A continuación, usamos la expresión regular [\\t\\p{Zs}] que es equivalente a \s y devuelve verdadero para un solo espacio en blanco.

\u0020 es un carácter Unicode que representa un espacio y devuelve verdadero cuando se pasa una cadena con un solo espacio en blanco.

Y la última expresión regular \p{Zs} también es un separador de espacios en blanco que identifica espacios en blanco.

import java.util.regex.Pattern;

public class RegWhiteSpace {
  public static void main(String[] args) {
    boolean whitespaceMatcher1 = Pattern.matches("\\s+", "   ");
    boolean whitespaceMatcher2 = Pattern.matches("\\s", " ");
    boolean whitespaceMatcher3 = Pattern.matches("[\\t\\p{Zs}]", " ");
    boolean whitespaceMatcher4 = Pattern.matches("\\u0020", " ");
    boolean whitespaceMatcher5 = Pattern.matches("\\p{Zs}", " ");

    System.out.println("\\s+ ----------> " + whitespaceMatcher1);
    System.out.println("\\s -----------> " + whitespaceMatcher2);
    System.out.println("[\\t\\p{Zs}] --> " + whitespaceMatcher3);
    System.out.println("\\u0020 ------->" + whitespaceMatcher4);
    System.out.println("\\p{Zs} ------->" + whitespaceMatcher5);
  }
}

Producción :

\s+ ----------> true
\s -----------> true
[\t\p{Zs}] --> true
\u0020 ------->true
\p{Zs} ------->true
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

Artículo relacionado - Java Regex

Artículo relacionado - Java Regex