Saltar al contenido

¿Meta carácter Java RegEx (.) Y punto ordinario?

Nuestro team de expertos pasados ciertos días de trabajo y de juntar de información, hallamos la solución, nuestro deseo es que todo este artículo sea de gran utilidad en tu plan.

Solución:

Si desea que el punto u otros caracteres con un significado especial en las expresiones regulares sean un carácter normal, debe escapar con una barra invertida. Dado que las expresiones regulares en Java son cadenas de Java normales, debe escapar de la barra invertida, por lo que necesita dos barras invertidas, por ejemplo \.

Las soluciones propuestas por los otros miembros no me funcionan.

Pero encontré esto:

para escapar de un punto en java regexp write [.]

Las expresiones regulares de estilo Perl (en las que se basa más o menos el motor de expresiones regulares de Java) tratan los siguientes caracteres como caracteres especiales:

. ^ $ | * +? ()[{ have special meaning outside of character classes,

]^ - tener un significado especial dentro de clases de personajes[...]).

Por lo tanto, debe escapar de esos (y solo esos) símbolos según el contexto (o, en el caso de las clases de caracteres, colocarlos en posiciones en las que no se puedan malinterpretar).

Es posible que funcione el escape innecesario de otros caracteres, pero algunos motores de expresiones regulares lo tratarán como errores de sintaxis, por ejemplo _ causará un error en .NET.

Algunos otros conducirán a false resultados, por ejemplo < se interpreta como un literal < en Perl, pero en egrep significa "límite de palabras".

Así que escribe -?d+.d+$ para igualar 1.50$, -2.00$ etc. y [()[]] para una clase de carácter que coincide con todo tipo de corchetes / llaves / paréntesis.

Si necesita transformar la entrada de un usuario string en una forma segura de expresiones regulares, use java.util.regex.Pattern.quote.

Lectura adicional: RegexGuru del blog de Jan Goyvaert sobre cómo escapar de los metacaracteres

Te mostramos las reseñas y valoraciones de los usuarios

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : / /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *