字符串替换函数 ReplaceAll 函数详解
替换在一个字符串中所有的另一个字符串。
语法
result = ReplaceAll( 源字符串, 旧字符串, 新字符串 )
result = 字符串变量.ReplaceAll( 旧字符串, 新字符串 )
参数
源字符串
String 数据类型
原始字符串。
旧字符串
String 数据类型
要被替换的字符串。
新字符串
String 数据类型
用于替换的字符串。
返回值
结果
String 数据类型
用ReplaceAll函数对源字符串处理后的副本。
说明
ReplaceAll 能将源字符串中所有的旧字符串替换成新字符串。 Replace 函数不区分大小写。
如果新字符串是空字符串(""),ReplaceAll 将除源字符串中的所有旧字符串。
如果旧字符串是空字符串(""),ReplaceAll 将修改源字符串而直接返回其副本。
范例
以下是一些有关ReplacAll 函数的范例:
Dim result As String
result=ReplaceAll("xyxyxy","x","z") //返回 "zyzyzy"
result=ReplaceAll("The quick fox"," ","") //返回 "Thequickfox"
str不会变,但是会返回一个String
你这样写就对了
比如:
String str = “123456789523116244565”;
String str1 = “5”;
String str2 = str.replaceAll(str1,"*****");
这样str2就是你要得东西。
这个问题其实是关于引用的返回值问题……
你把str.replaceAll(str1,"*****");做如下修改,即可:
String s = str.replaceAll(str1,"*****");
然后再输入s的值就会得到你想要的了,这是java的基础知识。
你应该用 str = str.replaceAll(str1, "*****"); 就对了,因为方法返回的字符串你没有用变量保存下来啊
改为:
String str = “123456789523116244565”;
String str1 = “5”;
str.replaceAll(str1,"\\*****");