Expresiones regulares·un parámetro de consulta de una URL

un parámetro de consulta de una URL

Coincide con un parámetro de consulta de una URL. Lo encuentra en cualquier parte del texto. Tiene 2 grupos de captura.

Patrón
/[?&]([^=&]+)=([^&]*)/
Alcance
en cualquier parte del texto
Grupos de captura
2
Lo que captura en el primer ejemplo
?a=1

Pruébalo

Escribe cualquier texto y se marcará lo que captura la expresión. Todo ocurre en tu navegador y no se envía a ninguna parte.

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

2 coincidencias

Ejemplos que coinciden

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

Ejemplos que no coinciden

  • a=1
  • /path

Otras expresiones del grupo

Cómo leerlo

  • Con ^ y $ alrededor, debe coincidir la cadena entera; sin ellos, la coincidencia puede estar en cualquier parte. Ancla siempre lo que uses para validar.
  • Los paréntesis ( ) capturan lo que envuelven. Si solo necesitas agrupar, escribe (?: ) para que no se desplace la numeración.
  • Cada expresión de aquí se comprueba con sus ejemplos. Aun así, "parece un correo" y "es un buzón real" son cosas distintas.
  • Las repeticiones abiertas anidadas como (a+)+ pueden dispararse con ciertas entradas. Busca esa forma antes de pegar una expresión ajena.

Preguntas frecuentes

Q. ¿Cuál es la regex para un parámetro de consulta de una URL?

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

Q. ¿Qué cadenas coinciden?

Un texto como ?a=1 coincide; uno como a=1 no.

Q. ¿Debe coincidir la cadena entera?

No. Encuentra la parte en cualquier lugar del texto. Añade ^ y $ si quieres comprobar la cadena entera.

Q. ¿Cómo uso lo capturado?

Hay 2 grupos de captura, así que puedes leerlos desde match[1].