Javascript 中 String.prototype.search() 中的方括号
Square brackets in String.prototype.search() in Javascript
当你在String.prototype.search()的搜索短语中使用方括号时,似乎发生了一些奇怪的事情:
var text = 'the needle in a [haystick]';
var result1 = text.search('[the] needle'); // 2
var result2 = text.search('[the]needle'); // -1
var result3 = text.search('[haystick]'); // 0
var result4 = text.search('''[haystick'']'); // 16
var result5 = text.search('['); // SyntaxError: Unterminated character class .
如果我用''
转义括号,它似乎可以正常工作.但是为什么?
如果在 String.prototype.search() 中使用字符串作为参数,则此字符串始终转换为正则表达式。
var result1 = text.search('[the] needle');
与 相同
var result1 = text.search(/[the] needle/);
为了搜索字符串,你必须使用 String.prototype.indexOf():
var result3 = text.indexOf('[haystick]'); // 16
相关文章:
- 节点是否需要模块传递带有方括号的arg?这是个错误吗
- Lucene Search in Alfresco
- 使用方括号访问插件原型函数
- 在javascript中使用方括号表示法的嵌套对象
- 正则表达式,用于匹配JavaScript的括号和方括号
- JSON and jQuery Search
- Javascript Regex Search
- Search a Sencha TreePicker
- 删除双引号和方括号JSON
- 要筛选的数组的管道值的含义:$select.search in angular
- Javascript在字符串中嵌套了方括号
- 用于获取两个方括号之间的数字的正则表达式
- $location.search() - 如何在 $scope.$watch 函数中使用作用域中的参数
- $location.search() 与外部函数一起使用,重置整个$scope.如何避免它
- 为什么在 JavaScript 函数调用中使用方括号?jquery.
- 方括号之间的 Javascript 增量号
- 使用 window.location.search 时,URL 中的字符会更改
- 使用 javascript/Jquery 获取方括号内的字符串
- 在第二次出现时提取方括号之间的字符串
- Javascript 中 String.prototype.search() 中的方括号