首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在regex javascript中转义问号

在regex javascript中转义问号
EN

Stack Overflow用户
提问于 2009-05-20 20:04:52
回答 3查看 115.7K关注 0票数 100

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

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

代码语言: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');     
 }          

这是因为?字符不起作用……我试着用\对其进行转义,但也不起作用。有没有其他方法可以直接使用?而不是作为特殊字符?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-05-20 20:08:09

您需要用两个反斜杠对其进行转义

代码语言:javascript
复制
\\?

有关更多详细信息,请参阅以下内容:

http://www.trans4mind.com/personal_development/JavaScript/Regular%20Expressions%20Simple%20Usage.htm

票数 164
EN

Stack Overflow用户

发布于 2009-05-20 20:09:51

您应该使用双斜杠:

代码语言:javascript
复制
var regex = new RegExp("\\?", "g");

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

"\\?",成为"\?"

票数 28
EN

Stack Overflow用户

发布于 2009-05-20 20:14:09

您可以用斜杠来分隔regexp,而不是用引号,然后用一个反斜杠来转义问号。试试这个:

代码语言:javascript
复制
var gent = /I like your Apartment. Could we schedule a viewing\?/g;
票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/889957

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档