5 pequeñas funciones para dominar el uso de expresiones regulares

Haga clic a continuación para seguirme y luego haga clic en... "Establecer como estrella" en la esquina superior derecha para recibir actualizaciones lo antes posible ~~~

Este artículo describe cómo utilizar expresiones regulares en Java implementando 5 pequeñas funciones.

Cómo utilizar expresiones regulares en Java

Las clases relacionadas con la regularidad en Java se encuentran en el paquete java.util.regex y se utilizan dos clases principales, de la siguiente manera:

4d6c482019b5d06a1ce5e038f3bca04b.png

Clase de patrón:

El patrón es una representación compilada de una expresión regular de expresión regular.

0c52f1fe9a87daf25cd0438ef0ea4339.png

Clase de emparejamiento:

Un motor que realiza operaciones de coincidencia en la entrada de la cadena de entrada interpretando el patrón

ca34b12cf63d1d844b0ff08381827fd2.png

Nota: En el código Java, el carácter de escape "\" debe escribirse como "\\" para representar un "\".

Por ejemplo, regex=\d debe escribirse como "\\d" en código Java.

Vamos a sentirlo a través de algunos fragmentos de código Java. Excepto por el código completo de la función 1, solo doy el método main() para el resto de los códigos de función.

Función 1: determinar si la cadena dada coincide exactamente con la expresión regular dada

884a27c86d636bbb692f72dbf8e83638.png

Descripción : métodomatches(), intenta hacer coincidir toda el área con el patrón.

regex=\w+ significa hacer coincidir al menos una letra o número o guión bajo [a-zA-z0-9_], por lo que la cadena "HelloWord" coincide completamente con esta expresión regular.

Función 2: determinar si la cadena dada contiene al menos un número

dec522f1a3daad0b9696a242753022b0.png

Descripción : El método find() intenta encontrar la siguiente subsecuencia de la secuencia de entrada que coincida con el patrón. Si hay varias subcadenas, el método find() puede encontrar todas las subcadenas que cumplan las condiciones.

regex=\d+ significa que coincide con al menos un número, por lo que la cadena "HelloWord,666!" puede coincidir con esta regla habitual.

4. Función 3: buscar todas las subcadenas digitales de una cadena determinada

5aed57d976e06a08979df7f57719ecba.png

Descripción : método group(), devuelve la subsecuencia de entrada capturada por el grupo dado durante la operación de coincidencia anterior. Es decir, la subcadena calificada encontrada mediante el método find() se puede obtener mediante el método group().

regex=\d+ significa que coincide con al menos un número. La cadena "HelloWord,666,888!" puede coincidir con esta regla normal dos veces. Los números coincidentes 666 y 888 se obtienen mediante el método group().

Función 4: Reemplazar todos los números en la cadena dada con asteriscos "*"

0cd7d86b17d5eee1bdfce3b8a98fb6f3.png

Descripción : método replaceAll(), reemplaza cada subsecuencia de la secuencia de entrada cuyo patrón coincide con la cadena dada. Es decir, el método replaceAll() se utiliza para reemplazar la subcadena calificada con los parámetros del método replaceAll().

regex=\d+ significa que coincide con al menos un número. La cadena "Beijing 666, China 888!" puede coincidir con esta regla normal dos veces. Los números coincidentes 666 y 888 se reemplazan con *** mediante el método replaceAll("*"), entonces la cadena reemplazada es "Beijing ***,China ***!".

Función 5: dividir la cadena dada mediante expresiones regulares

9352a6765f78d93567f525a7cc2b2a7d.png

Descripción : El método split() de String divide esta cadena de acuerdo con la coincidencia de la expresión regular dada.

La cadena "Beijing010shanghai021tianjin022!!!" puede coincidir con regex=\d+ 3 veces, se divide en números mediante el método split() y se dividen 4 grupos de contenido, a saber, "Beijing", "shanghai", "tianjin", "!!!”.

A través de los cinco fragmentos de código funcional anteriores, debería tener una comprensión más clara de cómo utilizar expresiones regulares en el desarrollo de Java.

Supongo que te gusta

Origin blog.csdn.net/z123456789XDW/article/details/133053490
Recomendado
Clasificación