← Lista de guías GUIDE
Comprende la diferencia entre *, +, {n,m} y qué ocurre al añadir ?.

Los cuantificadores indican cuántas veces se repite el elemento anterior. * es 0 o más veces, + es 1 o más veces y ? es 0 o 1 vez. El número exacto se escribe con {n} y el rango con {n,m}. Por ejemplo, \d{3} son exactamente tres dígitos.

Por defecto, los cuantificadores son codiciosos (greedy). Es decir, intentan abarcar todo lo posible. Si aplicas <.*> a <a>b<c>, captura de golpe desde el primer < hasta el último >.

Si añades ? después del cuantificador, obtienes una coincidencia perezosa (lazy). <.*?> abarca lo mínimo posible y captura solo <a>. Esta diferencia es decisiva al extraer uno a uno los contenidos entre etiquetas o comillas.

A menudo un patrón se comporta de forma distinta a lo esperado por la codicia o la pereza. Si el resultado abarca demasiado, piensa en un cuantificador perezoso o en una clase de caracteres negada (como [^>]).