我制作了如下代码,但我对它的完成情况并不满意。
也许是找出例如最简单的方法所有选中字符的索引是一个字符串?
我知道我可以使用indexOf()
(我知道我可以搜索索引)或match()
但它总是返回第一个出现元素的索引。我确实尝试将split()
字符串添加到数组并使用inArray()
,但仍然不是这样。
找到最后一个字符的索引是什么目标。
function returnLastUnderscorePosition(string, offset) {
if (!string || string.match('_') === null) {
return 0;
}
var intPosition = string.match('_').index + 1,
strStringToFind = string.slice(intPosition);
if (strStringToFind.match('_')) {
intPosition += returnLastUnderscorePosition(strStringToFind, intPosition);
} else {
return (offset) ? intPosition + offset : intPosition;
}
}
由于
答案 0 :(得分:2)
您可以使用lastIndexOf()
来获取一个字符串在另一个字符串中最后出现的位置:
function returnLastUnderscorePosition(string, offset) {
if (!string || string.match('_') === null)
return 0;
var intPosition = string.lastIndexOf('_');
return (offset) ? intPosition + offset : intPosition;
}
答案 1 :(得分:0)