Javaで「XXXXX」との文字列値を交換する方法は?

シェア:

私は「XXXX」で特定の文字列の値を置き換えたいです。問題は、パターンが非常に動的であり、それは、入力データ中の固定パターンを持っていませんです。

私の入力データ

https://internetbanking.abc.co.uk/personal/logon/login/?userId=Templ3108&password=Got1&reme

私は「XXXX」とのuserIdの値とパスワードを交換する必要があります。

私の出力はする必要があります -

https://internetbanking.abc.co.uk/personal/logon/login/?userId=XXXX&password=XXXX&reme

これは、例えば、オフです。ユーザーIDとパスワードだけが存在している他のケースがあります -

userId = 12345678&パスワード= stackoverflowの&rememberID =

私は、上記を達成するためにJavaで正規表現を使用していますが、まだ成功していません。どんな指導を感謝しています。

[&]([^\\/?&;]{0,})(userId=|password=)=[^&;]+|((?<=\\/)|(?<=\\?)|(?<=;))([^\\/?&;]{0,})(userId=|password=)=[^&]+|(?<=\\?)(userId=|password=)=[^&]+|(userId=|password=)=[^&]+

PS:私は正規表現の専門家ではないです。また、正規表現から離れてこれを達成するための他の選択肢があるなら、私に知らせてください。

TeWu:
String url = "https://internetbanking.abc.co.uk/personal/logon/login/?userId=Templ3108&password=Got1&reme";
String masked = url.replaceAll("(userId|password)=[^&]+", "$1=XXXX");

参照してくださいオンラインデモ正規表現の説明を

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=23814&siteId=1