Expresiones regulares - Conocelas y pierdeles el miedo PARTE 3
tercera parte del articulo...
Delimitación
Los paréntesis se pueden utilizar para definir un subconjunto dentro de una expresión. Por ejemplo, para capturar la parte correspondiente al host name de un URL , utilizaría una expresión como ‘http://([^/])’ lo que estoy diciendo con esta expresión es que primero tengo la secuencia de caracteres ‘http://’ y seguido de esto tengo una subexpresion, la cual estoy delimitando con los paréntesis y aplico una expresión a este segmento en especifico, en este caso estoy buscando una cadena que coincide con cualquier carácter excepto ‘/’.
Alternativas
El meta carácter ‘|’ (barra vertical) significa ‘o’ (OR). Permite buscar diferentes alternativas de expresiones (mas bien subexpresiones) dentro de una sola expresion.
Esa definicion sono muy enredada, asi que mejor expliquemoslo con un ejemplo. Imaginemonos que tenemos la expresion dada ‘Doña’ y la expresion ‘Don‘. Cada una es una expresion separada, pero si definimos la expresion ‘Don|Doña‘. Sin embargo, hay que tener cuidado con abusar del uso del paréntesis, por que podemos terminar con expresiones difíciles de entender, y por lo tanto de mantener.
Cuantificadores o Multiplicadores
Los meta caracteres que hemos visto nos informan si nuestro patrón coincide con la cadena a comparar. Pero ¿y si queremos comparar con nuestra cadena un patrón que puede estar cero, una o mas veces? Para esto utilizamos un tipo especial de meta caracteres: los multiplicadores. Estos meta caracteres se aplican al carácter (o agrupación) que les precede, e indican el numero de veces que se puede encontrar dicho elemento para que haya una ocurrencia. Los tres meta caracteres cuantificadores son ‘?’, ‘*’ y ‘+’. El ‘?’ indica una multiplicidad de 0 a 1, el ‘*’ indica una multiplicidad de 0 a n, el ‘+’ indica una multiplicidad de 1 a ‘n‘. Los siguientes ejemplos dejan esto mas claro:
| Expresion | Explicación y ejemplos de coincidencia |
| ‘sub?scripcion’ | coincide con suscripcion y con subscripcion |
| ‘camp*a’ | coincide con cama, campa, campppa |
| ‘camp+a’ | coincide con campa y camppa, pero no con cama |
| ‘(ala)?cena’ | coincide con cena y alacena |
| ‘a*le’ | el ala aleve del leve abanico |
| ‘ ?le’ | el ala aleve del leve abanico |
| ‘ +le’ | el ala aleve del leve abanico |
También es posible indicar la multiplicidad exacta que es aceptable para un cuantificador. Para esto se utilizan las llaves ‘{ }’, y la sintaxis es primero indicar el valor mínimo de la multiplicidad, seguido de una coma, y luego el valor máximo de la multiplicidad.
| Expresion | Explicación y ejemplos de coincidencia |
| a{2,3} | la letra a puede estar dos o tres veces |
| a{2,} | La letra a puede estar dos o mas veces (no hay limite máximo) |
| a{0,3} | Coincide con cualquier cadena que tenga tres o menos letras a |
| a{5} | Exactamente cinco letras a |
| (.a){2} | el ala aleve del leve abanico |
- israel altamira's blog
- Login or register to post comments
Recent comments
10 weeks 23 hours ago
10 weeks 3 days ago
17 weeks 3 days ago
18 weeks 2 days ago
19 weeks 2 days ago
19 weeks 2 days ago
19 weeks 3 days ago
19 weeks 3 days ago
19 weeks 3 days ago
20 weeks 17 min ago