「a」タグの「href」の後に「=」を置き換える正規表現を作成しました。
output.replaceAll("(<a.*)href=(.*>)", "$1href" + replacemantstring+ "$2");
問題は、それが「=」の最後の出現をhref..の後に置き換えるだけであるということです。
私は何を間違えましたか?
ワイルドカードを欲張り .*から非 欲張りに変更する必要があります.*?。href=これにより、正規表現が最初の一致で停止するため、次のオカレンスにも一致します。
hrefパラメンターのリンクをに置き換えたい場合はnewURL、
output.replaceAll("(?i)(<a[^>]*?\\shref\\s*=)(['"]).*?\\2", "$1$2" + newURL + "$2");
編集:タグのすぐ=後ろhrefを置き換えたい場合は、<a>
output.replaceAll("(?i)(<a[^>]*?\\shref\\s*)=", "$1" + replacement);