我有以下字符串:
0 days 00 hour 20 min 51 sec
我想使用 Java 的正则表达式从中提取所有数字:
Pattern pattern = Pattern.compile("(\\d){1,2} days (\\d){2} hour (\\d){2} min (\\d){2} sec");
Matcher m = pattern.matcher("0 days 00 hour 20 min 51 sec");
令我惊讶m.group(4)
的是返回 1 而不是 51。m.group(2)
返回 0 而不是 00 也是如此
我发现这很令人困惑,因为 {n} 应该完全匹配前面表达式的 n 次出现,还是不匹配?