Abreviaciones de Límites de palabras en Expresiones Regulares

2020-05-13 RegExp

En nuestro anterior post estudiamos las Expresiones Regulares. Vimos los cuantificadores, clases, clases abreviadas, alternación, grupos y otros conceptos interesantes. Dentro de las abreviaciones de clases existen dos particularmente que no vimos por ser un poco más complejas que las demás, estás son, las abreviaciones de límites de palabras.

Abreviación Coincidencia
\b Un límite de palabra
\B Un no límite de palabra

Comencemos con el límite de palabra ( \b ). Al igual que las anclas (^$) esta abreviación de clase no produce coincidencia con la cadena evaluada. Más bien, actua como un delimitador posicional para indicar un rompimiento o límite de palabra. Observemos los siguientes ejemplos.

[0-9]+\b
La placa F58K expiró en 2019.

Observa que la única coincidencia de dígitos está dada por el año mencionado. Esto es así dado que después del número 58 hay caracteres de palabra (letras, números o guión bajo), es decir, no hay un rompimiento de palabra. Sin embargo, después del número 2019 hay un punto, que no es un caractér de palabra por lo cual si se produce la coincidencia.

\b[a-z]+
Dos y dos _son %cuatro.

En la anterior expresión hemos colocado el límite de palabra al comienzo de la expresión. Las palabras "y" y "dos" producen coincidencia ya que antes de ellas hay un espacio, lo cuál es un límite o rompimiento de palabra, es decir, no es una palabra. Sin embargo, la palabra cuatro "_son" no produce coincidencia porque antes de ella hay un caracter considerado de palabra el cual es el guión bajo. La palabra cuatro es coincidente porque el signo % no es caracter de palabra.

Como puedes darte cuenta esta abreviación de clase está enfocada en detección de palabras y permite encontrar rápidamente las palabras de un texto.

\b\w+\b
Lorem Ipsum simply dummy text of the printing and typesetting industry.

La abreviación opuesta \B delimitará con un no límite de palabra, es decir, cualquier caracter que sea letra, número o guión bajo.

Si te ha gustado este artículo puedes invitarme a tomar una taza de café

Acerca de Darío Rivera

Author

Ingeniero de desarrollo en PlacetoPay , Medellín. Darío ha trabajado por más de 6 años en lenguajes de programación web especialmente en PHP. Creador del microframework DronePHP basado en Zend y Laravel.

Sólo aquellos que han alcanzado el éxito saben que siempre estuvo a un paso del momento en que pensaron renunciar.