replace() などの文字列関数についてかなり疑問に思っていました。
私の目的は単純です。ログファイルに書き込む前にマスクする必要があるパスワードを含むテキストファイルに文字列を記録するロガーがあります。
例えば:
str = "-field_value=userId=1,-field_value=password=pass123,-field_value=location=London,-field_value=day=Tuesday,-field_value=emailPassword=pass123,-field_value=fbPassword=pass1234";
この場合、どのアプローチが最適でしょうか? 文字列は、パスワード"field_value"で終わる場合とそうでない場合があります。
次の出力を得るには、この文字列で発生するすべての「パスワード」を正確な長さでマスクする必要があります。
str = "-field_value=userId=1,-field_value=password=*******,-field_value=location=London,-field_value=day=Tuesday,-field_value=emailPassword=*******,-field_value=fbPassword=********";
使用するのに適したオプションはどれですか? 通常の文字列処理 (substrings/replaceAll/indexOf を使用) または StringBuilder 関数?
また、この場合、正規表現を使用するとどの程度効果的ですか? 私は正規表現を広範囲に使用したことがないため、このシナリオで正規表現を使用することについてはほとんど考えていません。