Tengo el siguiente registro y soy nuevo en esto: https:\/\/www.google-analytics.com\/.*
Y las cadenas que estoy usando para probar son:
https://www.google-analytics.com/collect?v=1&ec=click&ea=test https://www.google-analytics.com/collect?v=1&ea=tes Actualmente, ambas cadenas pasarán esta verificación como lo estoy haciendo /.* al final de la expresión regular, pero lo que quiero es que esto debería verificar solo ec=click param y SÓLO la primera cadena de prueba debería pasar ( https://www.google-analytics.com/collect?v=1&ec=click&ea=test )... ¿Alguien sabe cómo puedo hacer esto?
Enlace al patio de recreo: https://regex101.com/r/mIjGjD/1
Gracias de antemano
https:\/\/www.google-analytics.com\/(.*)&ec=click(.*)
Supongo que esto es lo que quieres
Esta expresión regular debería funcionar. Tenga en cuenta que agrego una función de mapa para obtener todas las coincidencias posibles en una matriz de URL
const urls = [ "https://www.google-analytics.com/collect?v=1&ec=click&ea=test", "https://www.google-analytics.com/collect?v=1&ea=test" ]; const reg = /https:\/\/www\.google-analytics\.com\/.*&ec=click.*/; const matches = urls.map(url => url.match(reg) || []).flat(); console.log(matches)