Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

287
Vistas
How to regex replace a query string with matching 2 words?

I have a url and I want to replace the query string. For example

www.test.com/is/images/383773?wid=200&hei=200

I want to match the wid= and hei= and the numbers don't have to be 200 to replace the whole thing so it should look like this.

Expected www.test.com/is/images/383773?@HT_dtImage

So I've tried doing but it only replaced the matching wei and hei.

const url = "www.test.com/is/images/383773?wid=200&hei=200"

url.replace(/(wid)(hei)_[^\&]+/, "@HT_dtImage")

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

I would just use string split here:

var url = "www.test.com/is/images/383773?wid=200&hei=200";
var output = url.split("?")[0] + "?@HT_dtImage";
console.log(output);

If you only want to target query strings havings both keys wid and hei, then use a regex approach:

var url = "www.test.com/is/images/383773?wid=200&hei=200";
var output = url.replace(/(.*)\?(?=.*\bwid=\d+)(?=.*\bhei=\d+).*/, "$1?@HT_dtImage");
console.log(output);

about 4 years ago · Juan Pablo Isaza Denunciar

0

You can match either wid= or hei= until the next optional ampersand and then remove those matches, and then append @HT_dtImage to the result.

\b(?:wid|hei)=[^&]*&?

The pattern matches:

  • \b A word boundary to prevent a partial word match
  • (?:wid|hei)= Non capture group, match either wid or hei followed by =
  • [^&]*&? Match 0+ times a char other than &, and then match an optional &

See a regex demo.

let url = "www.test.com/is/images/383773?wid=200&hei=200"
url = url.replace(/\b(?:wid|hei)=[^&]*&?/g, "") + "@HT_dtImage";
console.log(url)

about 4 years ago · Juan Pablo Isaza Denunciar

0

You can make use of lookaround using regex /\?.*/

enter image description here

const url = 'www.test.com/is/images/383773?wid=200&hei=200';

const result = url.replace(/\?.*/, '?@HT_dtImage');
console.log(result);

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda