小编典典

计算字符串中一个单词的出现次数

java

我是Java字符串的新手,问题是我想计算字符串中特定单词的出现次数。假设我的字符串是:

i have a male cat. the color of male cat is Black

现在,我也不想拆分它,所以我想搜索一个“雄猫”这个词。它在我的字符串中出现了两次!

我正在尝试的是:

int c = 0;
for (int j = 0; j < text.length(); j++) {
    if (text.contains("male cat")) {
        c += 1;
    }
}

System.out.println("counter=" + c);

它给了我46个计数器的价值!那么解决方案是什么?


阅读 213

收藏
2020-09-11

共1个答案

小编典典

您可以使用以下代码:

String in = "i have a male cat. the color of male cat is Black";
int i = 0;
Pattern p = Pattern.compile("male cat");
Matcher m = p.matcher( in );
while (m.find()) {
    i++;
}
System.out.println(i); // Prints 2

演示版

它能做什么?

它匹配"male cat"

while(m.find())

表示在m找到匹配项时执行循环内给出的任何操作。并且我将iby 的值递增i++,因此很显然,这给出了male cat一个字符串的数量。

2020-09-11