How to pass a variable into regex in jQuery/Javascript
Question
Is there a way to pass a variable into a regex in jQuery/Javascript?
I wanna do something like:
var variable_regex = "bar";
var some_string = "foobar";
some_string.match(/variable_regex/);
In Ruby you would be able to do:
some_string.match(/#{variable_regex}/)
Found a useful post:
Solution 2
It's easy:
var variable_regex = "bar";
var some_string = "foobar";
some_string.match(variable_regex);
Just lose the //. If you want to use complex regexes, you can use string concatenation:
var variable_regex = "b.";
var some_string = "foobar";
alert (some_string.match("f.*"+variable_regex));
OTHER TIPS
Javascript doesn't support interpolation like Ruby -- you have to use the RegExp
constructor:
var aString = "foobar";
var pattern = "bar";
var matches = aString.match(new RegExp(pattern));
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow