Javascript正则表达式多空间“\s";不';我不能在铬上工作
我试着用这个正则表达式Javascript正则表达式多空间“\s";不';我不能在铬上工作,javascript,regex,Javascript,Regex,我试着用这个正则表达式 new RegExp('utm_source=Weekly\SRecommended\SJobs\SEmail', 'ig'); 当我尝试在中使用它时,它会起作用 在我的代码中,它不起作用 我尝试在控制台中使用它,结果是 /utm_source=WeeklysRecommendedsJobssEmail/gi 没有空格的代码 当我尝试使用空格字母时,它是有效的 有什么帮助吗?因为\是正则表达式和字符串的转义字符。如果要从字符串创建正则表达式,则必须转义\: new R
new RegExp('utm_source=Weekly\SRecommended\SJobs\SEmail', 'ig');
当我尝试在中使用它时,它会起作用
在我的代码中,它不起作用
我尝试在控制台中使用它,结果是
/utm_source=WeeklysRecommendedsJobssEmail/gi
没有空格的代码
当我尝试使用空格字母时,它是有效的
有什么帮助吗?因为
\
是正则表达式和字符串的转义字符。如果要从字符串创建正则表达式,则必须转义\
:
new RegExp('utm_source=Weekly\\SRecommended\\SJobs\\SEmail', 'ig');
或者简单地使用一个regex文本来避免这个问题:
/utm_source=Weekly\SRecommended\SJobs\SEmail/ig
newregexp('utm\u source=Weekly\\srecommed\\SJobs\\SEmail','ig')
我需要知道这样做的原因:d原因是\S
是JS字符串文本中未定义的转义序列,这些转义序列中的反斜杠只是从字符串中丢弃。问题是已知的,非常频繁,无需重复“双倍括号”,因此,问题结束。