以下是一个使用 Java 编程语言实现查找字符串中某个子串的个数的示例代码:
public class StringCount {
public static void main(String[] args) {
String s = "abcabcabcefgabcefgabcefg";
String substr = "abc";
int count = 0;
int pos = 0;
while (true) {
pos = s.indexOf(substr, pos);
if (pos == -1) {
break;
}
count++;
pos += substr.length();
}
System.out.println("字符串中'" + substr + "'出现的次数为:" + count);
}
}
运行这段代码,输出结果为:
字符串中'abc'出现的次数为:3
具体实现方法:
-
定义要查找的字符串
s
和子串substr
,以及一个计数器count
和初始搜索位置pos
。 -
进入一个无限循环,每次使用
s.indexOf(substr, pos)
方法在s
中从pos
位置开始查找子串substr
,并返回子串在s
中的位置pos
。 -
如果找到了子串,则计数器
count
加1,重新设置pos
的值为pos + substr.length()
,即设置下一次搜索的起始位置。 -
如果没有找到子串,则退出循环。
-
使用
System.out.println()
方法输出最终的计数器count
的值,表示子串substr
在字符串s
中出现的次数。
注意:在 Java 中,String.indexOf()
方法也会返回子串在字符串中最左侧的出现位置,如果没有找到,则返回-1。另外,在每次找到子串后,需要将pos
的值更新为子串的下一个位置,这可以通过pos += substr.length()
来实现。