有什麼方法可以用修改後的捕獲組內容替換正則表達式嗎?Java正則表達式替換爲捕獲組
例子:
Pattern regex = Pattern.compile("(\\d{1,2})");
Matcher regexMatcher = regex.matcher(text);
resultString = regexMatcher.replaceAll("$1"); // *3 ??
而且我想和乘以$ 1替換所有發生3
編輯:
的樣子,什麼是錯的:(
如果我使用
Pattern regex = Pattern.compile("(\\d{1,2})");
Matcher regexMatcher = regex.matcher("12 54 1 65");
try {
String resultString = regexMatcher.replaceAll(regexMatcher.group(1));
} catch (Exception e) {
e.printStackTrace();
}
它拋出IllegalStateException:沒有找到匹配
但
Pattern regex = Pattern.compile("(\\d{1,2})");
Matcher regexMatcher = regex.matcher("12 54 1 65");
try {
String resultString = regexMatcher.replaceAll("$1");
} catch (Exception e) {
e.printStackTrace();
}
工作正常,但我不能改變的$ 1 :(
編輯:
現在,它的工作:)
通過直接在一根繩子上的合作,我們終於等來了[這裏](HTTP://計算器.com/a/6057820/1422630) – 2015-12-11 20:30:03