我可以使用str.search("me");和搜索字符串str.search("=");
但是当我搜索的时候 str.search("?");
我收到了错误 Unexpected Quantifier.
这是为什么?如何搜索"?"除正则表达式之外的其他内容?
小智 6
"?" 是正则表达式中的特殊字符("量词"之一),表示"匹配前一个零或一次".在这种情况下导致错误,因为它之前没有任何内容.但是,"一个?" 不会抛出异常,但会匹配"b"所以这是一个重要的事情要注意.
如果使用String.search,它采用正则表达式(如karim79指出,它不是唯一的方法),使用"[?]"或"\\?"或/\?/.这些表格会阻止"?" 从被视为特殊的正则表达式构造.
快乐的编码.
alert(str.indexOf("?")); // returns position as integer if present, -1 otherwise
Run Code Online (Sandbox Code Playgroud)
典型使用场景是:
if(str.indexOf("?") !== -1) {
// present
}
Run Code Online (Sandbox Code Playgroud)
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/indexOf
| 归档时间: |
|
| 查看次数: |
2026 次 |
| 最近记录: |