匹配javascript正则表达式中的文字特殊字符

时间:2015-08-26 14:00:32

标签: javascript regex

出于某种原因:

RegExp('\*').test($var)

给出以下错误:

SyntaxError: Invalid regular expression: /*/: Nothing to repeat

看起来引擎并不像我如何逃脱特殊角色。这不是正确的逃避方式吗?

1 个答案:

答案 0 :(得分:3)

您正在尝试匹配文字星号,但实际上您在字符串的开头应用了*量词,因为正则表达式中只有一个斜杠不足以逃避正则表达式的星号发动机。

使用

/\*/.test($var);

或者

RegExp('\\*').test($var)

但是,文字表示法是首选,因为您没有动态构建正则表达式模式(即模式在设计时已知)。