[英]Java how to using Regex mask numberic as I expected
建議我有以下兩個值:
123456789
123456789111
String.replaceAll可以跟隨嗎?
123456789 -> XXXXXX789
123456789111 -> XXXXXXXXX111
為掩碼的最后三個數字,但將其他字符替換為X? 請注意樣本中X的數量。
提前致謝。
是的,replaceAll函數將完成此工作。
String s1 = "123456789";
String s2 = "123456789111";
System.out.println(s1.replaceAll("\\d(?=\\d{3})", "X"));
System.out.println(s2.replaceAll("\\d(?=\\d{3})", "X"));
輸出:
XXXXXX789
XXXXXXXXX111
說明:
\\\\d(?=\\\\d{3})
僅在后跟三位數字時匹配。 因此,最后三位數字失敗。 最后,所有匹配的數字都用字母X
代替 是的你可以:
public static void main(String[] args) {
String s1 = "123456789";
String s2 = "123456789111";
String regex = "\\d(?=\\d{3})"; // each digit followed by exactly 3 digits should be replaced by X
System.out.println(s1.replaceAll(regex, "X"));
System.out.println(s2.replaceAll(regex, "X"));
}
O / P:
XXXXXX789
XXXXXXXXX111
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.