str.contains("dog") 例如: if(str.contains("cat")-6ren">
gpt4 book ai didi

java - 检查字符串中特定单词的数量

转载 作者:行者123 更新时间:2023-12-02 04:46:10 25 4
gpt4 key购买 nike

如果我想比较一个单词与另一个单词的使用量,我该怎么做?

不会是 str.contains("cat") > str.contains("dog")

例如:

if(str.contains("cat") == str.contains("dog")){
System.out.println("true");
}
else
system.out.print("false");

如果猫和狗出现的次数相同,则假设打印为 true。但显然不是,我需要做什么才能检查它?

最佳答案

要计算一个字符串在另一个字符串中出现的次数,请创建一个函数 ( extracted from here ):

“分割和计数”方法:

public class CountSubstring {
public static int countSubstring(String subStr, String str){
// the result of split() will contain one more element than the delimiter
// the "-1" second argument makes it not discard trailing empty strings
return str.split(Pattern.quote(subStr), -1).length - 1;
}

“删除并计算差异”方法:

public static int countSubstring(String subStr, String str){
return (str.length() - str.replace(subStr, "").length()) / subStr.length();
}

那么你只需比较:

return countSubstring("dog", phrase) > countSubstring("cat", phrase);

其他信息

要比较字符串,请使用 String::equalsString::equalsIgnoreCase如果您指的不是大写小写

 string1.equals(string2);
string1.equalsIgnoreCase(string2);

要查找某个字符串在另一个字符串中出现的次数,请使用 indexOf

 string1.indexOf(string2, index);

要查看一个字符串是否包含另一个字符串,请使用 contains

 string1.contains(string2);

关于java - 检查字符串中特定单词的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29645060/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com