Esto casi tiene la respuesta ... ¿Cómo se usa una variable en una expresión regular? ?

¿Necesito saber si puedo usar variables en lugar de hardcode en la expresión regular?

str1 = str1.replace(/abcdef/g, "stuvwxyz");

¿Puedo usar variables en lugar de / abcdef / gy "stuvwxyz"

0
gravityboy 21 jun. 2011 a las 02:11

3 respuestas

La mejor respuesta

Por supuesto que puedes, cada parte de esto puede ser dinámico:

var pattern = 'abcdef';
var input = 'stuvwxyz';
var modifiers = 'g';
var regex = new RegExp(pattern, modifiers);
var str1 = 'Hello abcdef';
str1 = str1.replace(regex, input);

Consulte también los docs.

7
Darin Dimitrov 20 jun. 2011 a las 22:18

Sí.

var pattern = /abcdef/g;
var input = "stuvwxyz";
str1 = str1.replace(pattern, input);
1
FishBasketGordo 20 jun. 2011 a las 22:14

¿Así?

var regex = /abcdef/g;
var string = "stuvwxyz";
var str1 = "abcdef";
str1 = str1.replace(regex, string);
1
TomHastjarjanto 20 jun. 2011 a las 22:15