Expressões regulares·um parâmetro de consulta de uma URL

um parâmetro de consulta de uma URL

Casa com um parâmetro de consulta de uma URL. Encontra em qualquer parte do texto. Tem 2 grupos de captura.

Padrão
/[?&]([^=&]+)=([^&]*)/
Alcance
em qualquer parte do texto
Grupos de captura
2
O que captura no primeiro exemplo
?a=1

Experimente

Digite qualquer texto e as partes capturadas serão marcadas. Tudo roda no seu navegador e nada é enviado.

?a=1 /p?a=1&b=2

2 correspondências

Exemplos que casam

  • ?a=1
  • /p?a=1&b=2

Exemplos que não casam

  • a=1
  • /path

Outras expressões do grupo

Como ler

  • Com ^ e $ em volta, a cadeia inteira precisa casar; sem eles, a correspondência pode estar em qualquer lugar. Ancore sempre o que usar para validar.
  • Os parênteses ( ) capturam o que envolvem. Se você só precisa agrupar, escreva (?: ) para a numeração não se deslocar.
  • Cada expressão aqui é conferida com seus exemplos. Ainda assim, "parece um e-mail" e "é uma caixa real" são coisas diferentes.
  • Repetições abertas aninhadas como (a+)+ podem explodir com certas entradas. Procure esse formato antes de colar uma expressão alheia.

Perguntas frequentes

Q. Qual é a regex para um parâmetro de consulta de uma URL?

[?&]([^=&]+)=([^&]*).

Q. Quais cadeias casam?

Um texto como ?a=1 casa; um como a=1 não.

Q. A cadeia inteira precisa casar?

Não. Encontra a parte em qualquer lugar do texto. Coloque ^ e $ em volta para verificar a cadeia inteira.

Q. Como uso o que foi capturado?

Há 2 grupos de captura, então dá para ler a partir de match[1].