我正在尝试用Java中的正则表达式匹配子字符串。
我尝试了一些不同的正则表达式,例如: “([[IO])(。{2})”,“([IO])..”,“(I | O)(。{2})”,“([IO])..” ...
所有这些人都在regexr.com中工作,以输入“ T.FCI.P”。但是,它与我的Java代码不匹配。
我要实现的方法是这样的:
private static boolean matchingExpression(String text){
Pattern patt = Pattern.compile(REGEX);
Matcher match = patt.matcher(text);
if (match.matches()){
return match.group(1).equals(OBJECTIVE);
}
return Boolean.FALSE;
}
输入参数'text'是:“ T.FCI.P”,但在其他情况下可以是:“ T.FCO.R”,“ T.FCI.J”或“ T.FCO.P” “
在该类中,我具有以下属性:
private static final String REGEX = "([IO])(.{2})";
private static final String OBJECTIVE = "I";
此刻的结果是,当执行if时,结果始终为false。即使在网页中regexr.com都说它是匹配的。
能帮我吗?我不知道这种情况正在发生,它通常可以在其他类中使用。