(修改)
我想知道String的特定子字符串是否与特定的正则表达式匹配。类似的东西:
boolean matchSubString(Pattern p, String string, int start, int end) {
String sub = string.substring(start, end);
return p.matcher(string).matches();
}
但是,当我环顾四周时,这不起作用。假设我的正则表达式是
(?<![A-Z])[A-Z ]+(?![A-Z])
我想
matchSubString(p, "XABC",1 , 4)
返回“false”,但它返回“true”,当然,因为matches()不知道后面或后面的字符。
我知道没有办法使用标准的java.util.regex对象来实现它,但是JAVA还有其他任何可以执行它的正则表达式库吗?
答案 0 :(得分:-1)
匹配
这应该有效:
(?<![A-Z])[A-Z]{3} [A-Z]{3}(?![A-Z])
这个正则表达式
[A-Z]{3} [A-Z]{3}
(?<![A-Z])
和(?![A-Z])