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=]