Signo de interrogación (?), signo más (+), asterisco (*)

Signo de interrogación (?)

El signo de interrogación (?) coincide con el carácter anterior cero o una vez.

Por ejemplo, 10? coincide con lo siguiente:

  • 1
  • 10

Ejemplo

Coincide con una dirección IP con uno o dos dígitos en la última sección.

Por ejemplo, 216.239.32.\d\d? coincide con lo siguiente:

  • 216.239.32.2
  • 216.239.32.34

En este ejemplo, se usa la barra inversa para escapar el decimal y \d para que coincida con cualquier dígito.

Signo más (+)

El signo más (+) coincide con el carácter anterior una o más veces.

Por ejemplo, 10+ coincide con lo siguiente:

  • 10
  • 100
  • 1000
  • etc.

Ejemplo

Coincide con una dirección IP que tiene uno o más dígitos en la última sección.

Por ejemplo, 216.239.32.\d+ coincide con lo siguiente:

  • 216.239.32.2
  • 216.239.32.34
  • 216.239.32.567

En este ejemplo, se usa la barra inversa para escapar el decimal y \d para que coincida con cualquier dígito.

Asterisco (*)

El asterisco o estrella coincide con el carácter anterior cero o más veces.

Por ejemplo, 10* coincide con lo siguiente:

  • 1
  • 10
  • 100
  • 1000
  • etc.

Ejemplo

Coincide con una dirección IP con cero o más dígitos en la última sección.

Por ejemplo, 216.239.32.\d* coincide con lo siguiente:

  • 216.239.32.
  • 216.239.32.2
  • 216.239.32.34
  • 216.239.32.567

En este ejemplo, se usa la barra inversa para escapar el decimal y \d para que coincida con cualquier dígito.

Si necesitas hacer coincidir más que solo el elemento anterior, puedes combinar el asterisco () con el punto (.). El punto coincide con cualquier elemento anterior y, luego, el asterisco coincide con ese elemento cero o más veces, lo que te permite hacer coincidir elementos como todos los URIs que comienzan y terminan con los mismos caracteres, independientemente de cuántos caracteres haya en el medio. Por ejemplo, /mens/.*html coincide con lo siguiente:

  • /mens/shirts/oxford.html
  • /mens/shirts/oxford/shortsleeve.html