母音で始まるすべての単語をテキストファイルの"XXXXX"
に置き換えようとしています。私はこれを行うにはRegEx
を使用していますが、replaceAllメソッドで置換しようとすると、置き換えられる代わりに置換文字列が追加されています。置換する代わりに置換する文字列を追加するすべてのメソッドをJavaで置換する
ここに私のテキストファイル、コード、出力があります。
こんにちは12私は ありがとういいよあなたに をしているどのようにジョン だ89767 0
$%^
コード:
String dest = data.replaceAll("\\b(?=[AEIOUaeiou])","XXXXX");
System.out.println(dest);
データが含まれている文字列をすべて見ますファイルデータ。
出力:
Hello 12 XXXXXI XXXXXam Manoj
How XXXXXare you
XXXXXI XXXXXam good
Thank you 89767 0
#$%^
この問題を解決するために私を助けてください。 replaceAll()メソッドに関するいくつかの回答がありましたが、私の問題に対する答えを見つけることができません。 \\b
はワード境界の位置と一致し、(?=[AEIOUaeiou])
肯定先読みが母音の前に位置をアサート:
使用 'data.replaceAll( "\\ B [AEIOUaeiou] \\ * W"、 "XXXXX");'または文字にマッチするだけで、 '\ w'を' \ p {Alpha} 'に置き換えます。 –