JavaScript中字面量正则/^STRINGA/i对应的RegExp构造函数写法是什么?
JavaScript正则字面量与RegExp构造函数的对应写法
/^STRINGA/i对应的RegExp构造函数写法为:
new RegExp('^STRINGA', 'i')
对应规则说明
- RegExp构造函数共接收两个参数:
- 第一个参数是正则模式字符串,即正则字面量中两个斜杠
/之间的全部内容 - 第二个参数是修饰符字符串,即正则字面量最后一个斜杠
/之后的字符
- 第一个参数是正则模式字符串,即正则字面量中两个斜杠
- 你举的示例
new RegExp('country', 'i')对应字面量/country/i,完全符合上述规则,只需要把字面量两个斜杠中间的^STRINGA作为第一个参数传入,修饰符i作为第二个参数传入即可 - 额外注意:如果正则模式中包含反斜杠
\这类需要转义的特殊字符,在构造函数的第一个字符串参数中需要做双重转义,比如字面量/\s*\d+/g对应的构造函数写法为new RegExp('\\s*\\d+', 'g'),因为JavaScript字符串本身会先执行一次转义解析。
内容的提问来源于stack exchange,提问作者Valiant
相关产品推荐
相关产品推荐

