我有一个字符串,例如"kdf343kkkk4k4"
。我需要找到此字符串上的数字,并用'X'
这样的特定字符替换数字。输出应该像"kdfXXXkkkkXkX"
。
每个号码都应替换为'X'
:
343 = XXX
我尝试使用正则表达式替换,但它一起替换所有。
343 = X
我使用以下正则表达式:
x.replaceAll("([0-9])+", "X");
请向我解释如何做到这一点。
答案 0 :(得分:7)
使用此:
x = x.replaceAll("\\d", "X");
您不需要 + ,并指定“一个或多个”数字将替换为单个X
答案 1 :(得分:3)
在正则表达式中删除 + symbol
即
x.replaceAll("([0-9])", "X");
并且不要忘记重新分配它,因为String在java中是不可变的
x= x.replaceAll("([0-9])", "X");
答案 2 :(得分:0)
方法1:
String name = "Test656887";
name = name.replaceAll("[0-9]","X");
System.out.println(name);
方法2:
String name = "Test656887";
name = name.replaceAll("\\d","X");
system.out.println(name);