我已经看过很多关于此类问题的类似问题,但它们并没有解决我的问题...
这是我必须匹配的字符串:“ | 6 [1] |” 其中“ 6”是我必须放在正则表达式中的变量。
我尝试创建一个(pid是包含数字的变量):
var filter = new RegExp("/\|"+pid+"[\d*\]\|/");
看起来无法正常使用..尝试使用chrome控制台
从字符串构造正则表达式时,不需要/
定界符:
var filter = new RegExp("\|"+pid+"[\d*\]\|");
该/
令牌被用来表示正则表达式文本到语法分析器的开始/结束,很像"
和'
令牌表示一个字符串的开始/结束。在这种情况下,您使用的是字符串文字,因此不需要regexp文字分隔符。
您的实际正则表达式无法正常工作,因为:
因此,工作代码应为:
var filter = new RegExp("\\|"+pid+"\\[\\d*\\]\\|");
// ^ ^^ ^ ^ ^ Add in these backslashes
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句