我有这个表达式来检查URL是否存在密钥:
new RegExp('/'+x+'/ig')
(删除了不相关的代码)
事情是,它不起作用。我想我必须使用分隔符(开始和结束)才能工作,因为url有许多其他的东西,但不知道如何去做。
有什么想法吗?
答案 0 :(得分:4)
答案 1 :(得分:2)
看起来你正在混合正则表达式文字和字符串。
编写正则表达式的一种方法是这样的:
var myExp = new RegExp('[a-z]*')
它可以任意次数匹配来自a-z的任意数量的字母。 另一种做同样事情的方法是:
var myExp = /[a-z]*/
甚至
var myExp = /[a-z*]/ig
其中ig
表示“忽略大小写”和“全局”。
所以,坚持一种写作方式。不要混合字符串和文字。
编辑:
如果要使用第一种语法,但也忽略大小写并使匹配成为全局,则将字符串'ig'
作为第二个参数传递给RegExp构造函数(new RegExp('[a-z]*', 'ig')
)