0
javaの文字列の代わりに2文字をマスクできる正規表現パターンが必要です。しかし、入力文字列は予測できません。例マスク正規表現を使用して文字列内の代替文字を
String pattern = "abcdefgh";
OutPut: "ab\*\*ef\*\*"
したがって、表現は共通である必要があります。これはあなたのために働くべきで上記の文字列
javaの文字列の代わりに2文字をマスクできる正規表現パターンが必要です。しかし、入力文字列は予測できません。例マスク正規表現を使用して文字列内の代替文字を
String pattern = "abcdefgh";
OutPut: "ab\*\*ef\*\*"
したがって、表現は共通である必要があります。これはあなたのために働くべきで上記の文字列
に特異的ではない:
public static void main(String[] args) {
String pattern = "abcdefghijklmnop";
System.out.println(pattern.replaceAll("(\\w{2})(\\w{2})", "$1**"));
}
O/P:
ab**ef**ij**mn**
replaceAll("(\\w{2})(\\w{2})", "$1**"))
==> *、2グループの2つの文字」と2つの文字それぞれを置き換え* "。
奇数の文字がある場合、最後の文字はマスクされません。これは修正する必要があります==>System.out.println(pattern.replaceAll("(\\w{2})(\\w{2})", "$1**").replaceAll("(\\w{2})\\w$", "$1*"));
ありがとう、しかし、文字列のように奇数の番号を与えている場合、私はそれを発見したことの一つは、ex = "1234567"; 12 ** 567これを12 ** 56 * – Jam
@Jamに変更できますか?私の編集を確認してください – TheLostMind
@Jam - ここで 'Pattern'と' Matcher'を使うとより良い解決策になります:) – TheLostMind