JavaScript indexOf 从搜索字符串的末尾
JavaScript indexOf from end of search string
Javascript的String.indexOf
返回字符串中搜索词的索引。
它从搜索字符串的开头返回首次找到字符串的位置的索引。 示例:
'abcdefghijklmnopqrstuvwxyz'.indexOf('def') = 3;
但是我需要从搜索结束时获取它,例如:
'abcdefghijklmnopqrstuvwxyz'.indexOf('def') = 6; //essentially index + searchString.length
这样我就可以从返回值中String.substr
以获取该点之后的字符串。
我用一个简单的函数对此进行了排序,但是在编写它之后,我只是认为它是如此简单和有用,以至于我不明白为什么它还没有实现到 JavaScript 中!?
String.prototype.indexOfEnd = function(string) {
var io = this.indexOf(string);
return io == -1 ? -1 : io + string.length;
}
这将有预期的结果
'abcdefghijklmnopqrstuvwxyz'.indexOfEnd('def'); //6
编辑也可以包括 lastIndexOf 实现
String.prototype.lastIndexOfEnd = function(string) {
var io = this.lastIndexOf(string);
return io == -1 ? -1 : io + string.length;
}
var findStr = "def";
var searchString = 'abcdefghijklmnopqrstuvwxyz';
var endOf = -1;
endOf = searchString.lastIndexOf(findStr) > 0 ? searchString.lastIndexOf(findStr) + findStr.length : endOf;
alert(endOf);
如果未找到警报 -1
注意 如果有此字符串,则返回 23:
var searchString = 'abcdefghijklmnopqrstdefuvwxyz';
作为一个函数:
function endofstring (searchStr,findStr){
return searchStr.lastIndexOf(findStr) > 0 ? searchStr.lastIndexOf(findStr) + findStr.length : -1;
}
endofstring(searchString,"def");
相关文章:
- 使用javascript或angularjs特定过滤器搜索字符串中第一个img标记的json值
- javascript中的字符串搜索无法找到当前字符串
- Javascript中与区域设置无关的字符串搜索
- 使用变量而不是静态字符串搜索数组
- 为什么字符串搜索的参数表现得像Regex
- Javascript:字符串搜索正则表达式,从字符串的末尾开始
- 不区分大小写的字符串搜索不起作用
- jquery移动字符串搜索页面文本
- 基于字符串搜索的简单jquery查找和显示无法使其工作
- javascript兼容chrome、safari和opera的字符串搜索功能
- 为什么字符串搜索对某些字符串有效而对其他字符串无效
- 使用查询字符串搜索 AngularJS 资源
- Javascript RegEx全局字符串搜索下划线字符(_)
- 如何做一个“生”字字符串搜索和替换在JavaScript中,没有REGEX
- 使用JS/jQuery进行字符串搜索/模糊匹配
- JavaScript字符串搜索
- JS字符串搜索问题
- Javascript字符串搜索,字母i上出现双点
- 使用 HTML 输入值中的部分字符串搜索页面内容
- 通过单个字符串搜索Linkedin