通过我测试了我的正则表达式
([\S]*)[\[]([\d]+)[-]([\d]+)[\]]
Run Code Online (Sandbox Code Playgroud)
但是当我在 Java 中使用它时,它不会返回给我最后找到的组。
例如:值 -索引 [1-9]
通过 regex101 - 它返回我“索引”、“1”、“9”
但在 Java 中 - 仅“索引”和“1”
这是我正在使用的一段代码:
String regex = "([\\S]*)[\\[]([\\d]+)[-]([\\d]+)[\\]]";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(text);
if(matcher.find()){
for (int i = 0; i < matcher.groupCount(); i++)
System.out.println(matcher.group(i));
}
Run Code Online (Sandbox Code Playgroud)
任何线索,为什么会发生这种情况?