Matcher.replaceAll()
(すなわちMatcher.replaceAll("$2")
)。複数後方参照()
しかし、私は2つ以上の後方参照で動作させることができませんでした。 Matcher.replaceAll("$1$2")
。
Matcher.replaceAll()
は複数のバックリファレンスをまったくサポートしていますか?もしそうなら、それを使う正しい構文は何ですか?
Matcher.replaceAll()
(すなわちMatcher.replaceAll("$2")
)。複数後方参照()
しかし、私は2つ以上の後方参照で動作させることができませんでした。 Matcher.replaceAll("$1$2")
。
Matcher.replaceAll()
は複数のバックリファレンスをまったくサポートしていますか?もしそうなら、それを使う正しい構文は何ですか?
うまく動作します。次のスニペット:
Pattern p = Pattern.compile("(.)(.)");
Matcher m = p.matcher("ab");
System.out.println(m.replaceAll("$2$1"));
が印刷されます:
ba
すべて正しいです。私が使った構文は正しいものでしたが、 'Matcher.replaceAll(" $ 1 $ 2 ")'の戻り値を出力文字列に代入できませんでした。すべてが今はうまいです。ありがとう! – uTubeFan
Matcher.replaceAll( "$ 1 $ 2")が動作するはずです。あなたは何か間違ったことをしています –
http://download.oracle.com/javase/7/docs/api/java/util/regex/Matcher.html#replaceAll(java.lang.String)ここには何も変わりません。おそらく、あなたの2番目の逆参照は空ですか? – FailedDev