在 Java 中的字符串中查找子字符串的第二次出现

2022-08-31 10:59:07

比如说,我们得到了一个字符串和一个子字符串,比如说,.我需要找到字符串在原始字符串中第二次出现的时间的索引。"itiswhatitis""is"'i'"is"

String.indexOf("is")在这种情况下,将返回 2。在这种情况下,我希望输出为10。


答案 1

使用 indexOf() 的重载版本,它将起始索引(fromIndex)作为第二个参数:

str.indexOf("is", str.indexOf("is") + 1);

答案 2

我正在使用: Apache Commons Lang: StringUtils.ordinalIndexOf()

StringUtils.ordinalIndexOf("Java Language", "a", 2)