我正在执行这个正则表达式代码,期望获得一个组值为11,但是却得到了1。似乎该分组包含了正确的正则表达式,可以获取已知值之前的一个或多个数字。我确定这很简单,但我似乎无法解决它。
String mydata = "P0Y0M0W0DT11H0M0S";
Pattern pattern = Pattern.compile("P.*(\\\\d+)H.*");
Matcher matcher = pattern.matcher(mydata);
if (matcher.find()){
System.out.println(matcher.group(1));
}
Pattern.compile("(\\d+)H");
? - Wiktor Stribiżew\\\\d+
是一个打字错误吗?应该是\\d+
。 - Tunaki