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

Signo de interrogación (?)

El signo de interrogación (?) coincide con el carácter que le precede 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 con uno o varios 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 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 que coincida con más que el elemento anterior, puedes combinar el asterisco () con el punto (.). El punto coincide con cualquier elemento anterior y el asterisco coincide con ese elemento cero o más veces, lo que te permite buscar coincidencias como todas las URIs que empiezan y terminan con los mismos caracteres, independientemente del número de caracteres que haya entre ellos. Por ejemplo, /mens/.*html coincide con lo siguiente:

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