在正则表达式中转义问号

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (20)

这是我想的一个简单问题。

我试图在JavaScript中使用正则表达式来搜索另一个字符串中的字符串,如下所示:

 var content ="Hi, I like your Apartment. Could we schedule a viewing? My phone number is: ";

 var gent = new RegExp("I like your Apartment. Could we schedule a viewing? My", "g");

 if(content.search(gent) != -1){   
     alert('worked');     
 }          

这不起作用,因为?字符....我试图逃脱它\,但这也不起作用。有没有另外一种方法来使用?字面而不是特殊字符?

提问于
用户回答回答于

你应该使用双斜杠:

var regex = new RegExp("\\?", "g");

为什么?因为在JavaScript \中也用于转义字符串中的字符,所以:“\?” 变为:"?"

并且"\\?",成为 "\?"

扫码关注云+社区