我想这是一个简单的问题。
我正在尝试使用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');
}
这是因为?
字符不起作用……我试着用\
对其进行转义,但也不起作用。有没有其他方法可以直接使用?
而不是作为特殊字符?
发布于 2009-05-20 20:08:09
您需要用两个反斜杠对其进行转义
\\?
有关更多详细信息,请参阅以下内容:
http://www.trans4mind.com/personal_development/JavaScript/Regular%20Expressions%20Simple%20Usage.htm
发布于 2009-05-20 20:09:51
您应该使用双斜杠:
var regex = new RegExp("\\?", "g");
为什么?因为在JavaScript中,\
还用于转义字符串中的字符,所以:"\?“变成:"?"
和"\\?"
,成为"\?"
发布于 2009-05-20 20:14:09
您可以用斜杠来分隔regexp,而不是用引号,然后用一个反斜杠来转义问号。试试这个:
var gent = /I like your Apartment. Could we schedule a viewing\?/g;
https://stackoverflow.com/questions/889957
复制相似问题