方法一:使用indexof计算出第一次匹配的位置count++,然后将往后匹配,直到匹配不到
@Test
public void searchByIndexOf(){
String str="abcjavadefjavadddjavc";
String newStr="a";
int count=0;
int i=0;
while(str.indexOf(newStr,i)>=0){
count++;
i=str.indexOf(newStr,i)+newStr.length();
}
System.out.println(newStr+"匹配到"+count+"次");
}
方法二:使用replaceAll方法将要匹配的字串转成"",将替换前的长度减去替换后的长度
@Test public void searchByReplaceAll(){ String str="abcjavadefjavadddjavc"; String newStr="a"; int count=0; int i=0; int len1=str.length(); String str1=str.replaceAll(newStr,""); int len2=str1.length(); System.out.println(newStr+"匹配到"+(len1-len2)+"次"); }
方法三: