是否有可能找到正則表達式中與String的特定部分匹配的所有組?在Java-Regex中匹配多個組
Pattern pattern = Pattern.compile("(green trousers)|(green\\s+t)");
Matcher matcher = pattern.matcher("my beautiful green trousers are red!");
while (matcher.find()) {
for (int i = 1; i <= matcher.groupCount(); i++) {
if (matcher.group(i) != null) {
System.out.println("group " + i + " matched");
}
}
}
本示例僅返回第一組作爲匹配,但我也對第二組匹配的事實感興趣。
不,這不是正則表達式如何工作。你將不得不檢查2種不同的模式,看看它們是否匹配。 –