Java没有';尽管输入为真,但似乎与正则表达式不匹配

Java没有';尽管输入为真,但似乎与正则表达式不匹配,java,regex,debugging,hashmap,pattern-matching,Java,Regex,Debugging,Hashmap,Pattern Matching,长时间的用户,但新的海报,我有一个非常令人沮丧的问题,我似乎无法调试。我有一个为理论练习进行语音搜索的程序。通过标准输入接收输入。 所以 但结果似乎表明,尽管从名单中看到了一个对手,但没有对手 java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,3 lastmatch=] java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz

长时间的用户,但新的海报,我有一个非常令人沮丧的问题,我似乎无法调试。我有一个为理论练习进行语音搜索的程序。通过标准输入接收输入。 所以

但结果似乎表明,尽管从名单中看到了一个对手,但没有对手

java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,3 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,5 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,7 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,3 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,7 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,4 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,6 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,6 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,4 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,9 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,4 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,6 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,6 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,4 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,4 lastmatch=]

非常感谢您的帮助。

您是否打印了
目录。获取(directorykey)
查看它是什么?是的,在我的目录输入的末尾似乎有一些空白。所以Jns实际上是“Jns”。我现在就试试看,看能不能解决我的问题。
  private static String search(){
  Iterator<String> searchKeyIterator = search.keySet().iterator(); 
  Iterator<String> directoryKeyIterator = directory.keySet().iterator(); 
  String output = new String();

  //Loop through the search terms
  while(searchKeyIterator.hasNext()){
      String searchkey = searchKeyIterator.next(); 
      Pattern searchRegex = Pattern.compile(regexBuild(search.get(searchkey))); 

      output += "\n" + searchkey + ": ";

      while(directoryKeyIterator.hasNext()){
          String directorykey = directoryKeyIterator.next();

          Matcher m  = searchRegex.matcher(directory.get(directorykey));
          boolean b = m.matches();

          if(b == true){
              output += directorykey + ", ";

          }
      }

      output = output.substring(0, output.length() - 2);
  }
    return output;}
key: Smith value: Smt
key: Johnson  value: Jnsn
key: Ericsson  value: Ercssn
key: Smyth value: Smt
key: Macdonald  value: Mcdnld
key: Smid  value: Smd
key: Schmidt  value: Scmdt
key: Smithers  value: Smtrs
key: Jonas  value: Jns
key: Nest O'Malett  value: Nst Mltt
key: Smythe  value: Smt
key: Van Damme value: Vn Dmm
key: Erikson  value: Erksn
key: Saunas  value: Sns
key: Johns  value: Jns
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,3 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,5 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,7 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,3 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,7 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,4 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,6 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,6 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,4 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,9 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,4 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,6 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,6 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,4 lastmatch=]
java.util.regex.Matcher[pattern=[CGJKQSXYZcgjkqsxyz][MNmn][CGJKQSXYZcgjkqsxyz] region=0,4 lastmatch=]