Java中 获取指定字符串在另一个字符串中出现的次数
方式一
/**
* @param args
*/
public static void main(String[] args) {
String srcText = "Hello World";
String findText = "e";
int num = appearNumber(srcText, findText);
System.out.println(num);
}
/**
* 获取指定字符串出现的次数
*
* @param srcText 源字符串
* @param findText 要查找的字符串
* @return
*/
public static int appearNumber(String srcText, String findText) {
int count = 0;
Pattern p = Pattern.compile(findText);
Matcher m = p.matcher(srcText);
while (m.find()) {
count++;
}
return count;
}
方式二
/**
* @param args
*/
public static void main(String[] args) {
String srcText = "Hello World";
String findText = "e";
int num = appearNumber(srcText, findText);
System.out.println(num);
}
/**
* public int indexOf(int ch, int fromIndex)
* 返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索
*
* @param srcText
* @param findText
* @return
*/
public static int appearNumber(String srcText, String findText) {
int count = 0;
int index = 0;
while ((index = srcText.indexOf(findText, index)) != -1) {
index = index + findText.length();
count++;
}
return count;
}