1 回答
TA贡献1836条经验 获得超3个赞
使用正则表达式解析范围,然后循环解析的值。需要进行一些微调,但我认为这应该可以帮助您开始。
Pattern rangePattern = Pattern.compile("([0-9]+)\\.([0-9]+)-([0-9]+)=(.*)$");
Matcher rangeMatcher = rangePattern.matcher("0900.13-17=First label");
if (rangeMatcher.matches()) {
String prefix = rangeMatcher.group(1);
int start = Integer.parseInt(rangeMatcher.group(2));
int end = Integer.parseInt(rangeMatcher.group(3));
String label = rangeMatcher.group(4);
for (int r = start; r < end; r++) {
System.out.println(prefix + "." + r + "=" + label);
}
}
创建一次模式,然后每次通过循环获取新的匹配器。
结果:
0900.13=First label
0900.14=First label
0900.15=First label
0900.16=First label
添加回答
举报