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

Ponto de interrogação (?)

O ponto de interrogação (?) corresponde ao caráter antecedente zero ou uma vez.

Por exemplo, 10? corresponde ao seguinte:

  • 1
  • 10

Exemplo

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

Por exemplo, 216.239.32.\d\d? corresponde ao seguinte:

  • 216.239.32.2
  • 216.239.32.34

Este exemplo usa a barra invertida para interpretar o ponto de forma literal e usa \d para corresponder a qualquer dígito.

Sinal de mais (+)

O sinal de mais (+) corresponde ao caráter antecedente uma ou mais vezes.

Por exemplo, 10+ corresponde ao seguinte:

  • 10
  • 100
  • 1000
  • etc.

Exemplo

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

Por exemplo, 216.239.32.\d+ corresponde ao seguinte:

  • 216.239.32.2
  • 216.239.32.34
  • 216.239.32.567

Este exemplo usa a barra invertida para interpretar o ponto de forma literal e usa \d para corresponder a qualquer dígito.

Asterisco (*)

O asterisco corresponde ao caráter antecedente zero ou mais vezes.

Por exemplo, 10* corresponde ao seguinte:

  • 1
  • 10
  • 100
  • 1000
  • etc.

Exemplo

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

Por exemplo, 216.239.32.\d* corresponde ao seguinte:

  • 216.239.32.
  • 216.239.32.2
  • 216.239.32.34
  • 216.239.32.567

Este exemplo usa a barra invertida para interpretar o ponto de forma literal e usa \d para corresponder a qualquer dígito.

Se precisar de encontrar uma correspondência para mais do que apenas o item anterior, pode combinar o asterisco () com o ponto (.). O ponto corresponde a qualquer item anterior e, em seguida, o asterisco corresponde a esse item zero ou mais vezes, o que lhe permite encontrar correspondências para itens como todos os URIs que começam e terminam com os mesmos carateres, independentemente do número de carateres que existam entre eles. Por exemplo, /mens/.*html corresponde ao seguinte:

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