Ponto de interrogação (?), sinal de mais (+), asterisco (*)

Ponto de interrogação (?)

O ponto de interrogação (?) corresponde ao caractere anterior zero ou uma vez.

Por exemplo, 10? corresponde a:

  • 1
  • 10

Exemplo

Corresponde a um endereço IP com um ou dois dígitos na última seção.

Por exemplo, 216.239.32.\d\d? corresponde a:

  • 216.239.32.2
  • 216.239.32.34

Este exemplo usa a barra invertida para fazer o escape do decimal e \d para corresponder a qualquer dígito.

Sinal de mais (+)

O sinal de adição (+) corresponde ao caractere anterior uma ou mais vezes.

Por exemplo, 10+ corresponde a:

  • 10
  • 100
  • 1000
  • etc.

Exemplo

Corresponde a um endereço IP com um ou mais dígitos na última seção.

Por exemplo, 216.239.32.\d+ corresponde a:

  • 216.239.32.2
  • 216.239.32.34
  • 216.239.32.567

Este exemplo usa a barra invertida para fazer o escape do decimal e \d para corresponder a qualquer dígito.

Asterisco (*)

O asterisco ou a estrela corresponde ao caractere anterior zero ou mais vezes.

Por exemplo, 10* corresponde a:

  • 1
  • 10
  • 100
  • 1000
  • etc.

Exemplo

Corresponde a um endereço IP com zero ou mais dígitos na última seção.

Por exemplo, 216.239.32.\d* corresponde a:

  • 216.239.32.
  • 216.239.32.2
  • 216.239.32.34
  • 216.239.32.567

Este exemplo usa a barra invertida para fazer o escape do decimal e \d para corresponder a qualquer dígito.

Se você precisar corresponder a mais do que apenas o item anterior, combine o asterisco () com o ponto (.). O ponto corresponde a qualquer item anterior, e o asterisco corresponde a esse item zero ou mais vezes, o que permite corresponder a coisas como todos os URIs que começam e terminam com os mesmos caracteres, independentemente de quantos caracteres estão entre eles. Por exemplo, /mens/.*html corresponde a:

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