Java 在字符串中查找子字符串时遇到问题
我需要打印字符串中多次出现的所有单词 范例Java 在字符串中查找子字符串时遇到问题,java,string,Java,String,我需要打印字符串中多次出现的所有单词 范例 input:s = "Java Ruby PHP. Java is good. PHP please looks at Java" 输出: Java PHP 此外,您还可以通过单词分割字符串,并使用Map计算计数。然后过滤count>1的单词。首先将字符串拆分为标记。然后,应用一种算法,找到所有标记出现不止一次,这可以在On中完成。然后打印结果。以下是Java教程:。下面是javadoc:。欢迎来到SO!不幸的是,你的答案可能会很快用正确的关键字
input:s = "Java Ruby PHP. Java is good. PHP please looks at Java"
输出:
Java
PHP
此外,您还可以通过单词分割字符串,并使用Map计算计数。然后过滤count>1的单词。首先将字符串拆分为标记。然后,应用一种算法,找到所有标记出现不止一次,这可以在On中完成。然后打印结果。以下是Java教程:。下面是javadoc:。欢迎来到SO!不幸的是,你的答案可能会很快用正确的关键字进行谷歌搜索,试试谷歌搜索Java字符串重复单词计数。非常感谢。它起作用了
Set<String> words = new HashSet<>();
String str = "Java Ruby PHP. Java is good. PHP please looks at Java";
Matcher mat = Pattern.compile("\\b(\\w+)(?=\\b.*\\1)").matcher(str);
while(mat.find()){
words.add(mat.group(1));
}
System.out.println(words);