在Java中查找子串的计数可以通过多种方式实现,以下是几种常见的方法:
String
类的 split
方法这种方法通过将原始字符串按照子串进行分割,然后计算得到的数组长度减去1(因为分割后数组的最后一个元素是原始字符串的剩余部分)。
public class SubstringCountExample {
public static void main(String[] args) {
String str = "hello world, hello universe";
String subStr = "hello";
int count = str.split(subStr).length - 1;
System.out.println("子串 \"" + subStr + "\" 出现的次数: " + count);
}
}
String
类的 indexOf
方法这种方法通过循环调用 indexOf
方法来查找子串的位置,每次找到后更新起始位置继续查找,直到找不到为止。
public class SubstringCountExample {
public static void main(String[] args) {
String str = "hello world, hello universe";
String subStr = "hello";
int count = 0;
int index = 0;
while ((index = str.indexOf(subStr, index)) != -1) {
count++;
index += subStr.length();
}
System.out.println("子串 \"" + subStr + "\" 出现的次数: " + count);
}
}
这种方法通过 Pattern
和 Matcher
类来实现,适用于更复杂的字符串匹配。
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class SubstringCountExample {
public static void main(String[] args) {
String str = "hello world, hello universe";
String subStr = "hello";
Pattern pattern = Pattern.compile(subStr);
Matcher matcher = pattern.matcher(str);
int count = 0;
while (matcher.find()) {
count++;
}
System.out.println("子串 \"" + subStr + "\" 出现的次数: " + count);
}
}
通过以上方法,你可以根据具体需求选择合适的方式来查找子串的计数。
领取专属 10元无门槛券
手把手带您无忧上云