51

我有一个字符串:“www.google.com.sdg.jfh.sd”

我想找到在“sdg”之后找到的第一个“.s”字符串。

所以我有“sdg”的索引,通过:

var start_index = str.indexOf("sdg");

现在我需要找到在“sdg”之后找到的第一个“.s”索引

任何帮助表示赞赏!

4

3 回答 3

140

还有第二个参数控制搜索的起始位置:

String.prototype.indexOf(arg, startPosition);

所以你可以做

str.indexOf('s', start_index);
于 2013-10-03T15:16:11.627 回答
24

此代码可能会有所帮助

var string = "www.google.com.sdg.jfh.sd",
  preString = "sdg",
  searchString = ".s",
  preIndex = string.indexOf(preString),
  searchIndex = preIndex + string.substring(preIndex).indexOf(searchString);

你可以在这里测试

于 2013-10-03T15:25:57.627 回答
2
var str = "www.google.com.sdg.jfh.sd";
var search = "sdg";
var start_index = str.substring(str.indexOf(search) + search.length).indexOf(".s");
于 2013-10-03T15:16:29.927 回答