Word boundary won't match the beginning or end in Javascript
I'm getting unexpec开发者_开发技巧ted results with this code:
'foo'.match(new RegExp('\bfoo\b')); // Returns null
Why is this returning null
while this one returns "foo"?
'foo'.match(new RegExp('foo')); // Returns "foo"
Doesn't a word boundary marker match the beginning and end as well?
EDIT: I need the regular expression itself to be a string because I am injecting variables into it.
Escape the backslashes
'foo'.match(new RegExp('\\bfoo\\b'));
Don't wrap it in quotes... instead, do this:-
'foo'.match(new RegExp(/\bfoo\b/))
精彩评论