In JavaScript, we append /g
to an unquoted string to denote a regular expression.
What if I have a string in a variable and want to use it as a regular expression?
Is this possible? If so, can anyone show me some example code?
Thanks.
In JavaScript, we append /g
to an unquoted string to denote a regular expression.
What if I have a string in a variable and want to use it as a regular expression?
Is this possible? If so, can anyone show me some example code?
Thanks.
Share Improve this question asked Jan 24, 2011 at 20:46 Tom TuckerTom Tucker 11.9k23 gold badges95 silver badges131 bronze badges3 Answers
Reset to default 6Use this:
new RegExp("your regex here", "modifiers");
And notice that /g
is not the delimiter for a regex, it is global modifier. A regex looks like this: /your regex here/modifiers
. modifiers
can be a bination of g
, i
and m
. They are all explained here: http://www.regular-expressions.info/javascript.html
/g
is a flag denoting global ( match all instances of the regex ), it doesn't denote a regular expression but is simply a flag.
If you want a dynamic regex use new RegExp
. Usage here: https://developer.mozilla/en/JavaScript/Reference/Global_Objects/RegExp
Thanks, Gabi, you helpmed a lot. However, I had to put the regexp part (the variable part) without quotes to make it work:
new RegExp(yourRegExp, "modifiers").
I hope this helps someone.