如何在不在短语中多次查找单词的情况下搜索字符串中的短语

时间:2018-03-24 23:24:37

标签: java arrays string search

所以我想搜索用户输入的参数,例如“Hello there”,而不是寻找“Hello”和“There”它的self。

String[] words = text.split("\\s+");        
    for (int i = 0; i < words.length; i++){
         if (searchString.contains(words[i])){
             counter++;
         }
    }

下面是代码我基本上试图计算字符串在txt文件中出现的次数。

2 个答案:

答案 0 :(得分:0)

我可能会使用Pattern和Matcher。

  Pattern p = Pattern.compile("Hello there");
  Matcher m = p.matcher(text);
  int counter = 0;
  while (m.find()) {
      counter++;
      System.out.println("found hello there!");
  }

计数器将反映文本中找到的匹配数量。

(编辑答案以反映评论中的澄清)

答案 1 :(得分:0)

使用模式,匹配器和自动增量整数

public static int stringCounter(String input, String toSearch)
{
     int counter = 0;
     Pattern pattern = Pattern.compile(toSearch);
     Matcher  matcher = pattern.matcher(input);
     while (matcher.find()) counter++;
     return counter;
}