Привет, я хочу увеличивать целочисленные значения между строкой. , например, исходная строка - m1p1b1. Этот код работает правильно, но у него есть одна проблема. Когда строка m10p10b10 это дает результат m21p21b21 не m11p11b11. Также целая длина между динамической строкой, поэтому я не могу сделать какой-либо статический код.Приращение цифры внутри строки
Pattern digitPattern = Pattern.compile("(\\d)");
Matcher matcher = digitPattern.matcher("m1p1b1");
StringBuffer result = new StringBuffer();
while (matcher.find()) {
matcher.appendReplacement(result, String.valueOf(Integer.parseInt(matcher.group(1)) + 1));
}
matcher.appendTail(result);
System.out.println(result.toString());
Изменить '(\\ d)' to '(\\ d +)' –