【发布时间】:2019-05-24 16:38:13
【问题描述】:
字符串“描述”有 5 位和 7 位的子串。我只想分别将 5digit、7digit 与 5digit、7digit 匹配。但是,5digit substring 提取整个 5 digit 字符串和 7 位的前 5 位。
Pattern 5digitPattern = Pattern.compile("([0-9]{5})");
Pattern 7digitPattern = Pattern.compile("([0-9]{7})");
Matcher 5digitMatcher = 5digitPattern.matcher(description);
Matcher 7digitMatcher = 7digitPattern.matcher(description);
if (5digitMatcher.find()) {
for (int i = 0; i < 5digitMatcher.groupCount(); i++) {
System.out.print("\t" + 5digitMatcher.group(i));
}
}
if (7digitMatcher.find()) {
for (int i = 0; i < 7digitMatcher.groupCount(); i++) {
System.out.print("\t" + 7digitMatcher.group(i));
}
}
请帮我分别匹配 5digit、7digit 和 5digit、7digit。
【问题讨论】:
-
我不确定输入和预期结果是什么,尤其是
7digit with 5digit。您能否在问题中包含一个或多个示例?
标签: java regex string regex-lookarounds regex-group