社区
Java SE
帖子详情
难以理解的String.replaceAll()方法
Jimlyli
2010-05-15 10:38:42
String a1="a";
String c1="b";
String d1="a";
System.out.println(a1.replaceAll(d1,c1));
String a2="1+1";
String c2="b";
String d2="1+1";
System.out.println(a2.replaceAll(d2,c2));
输出的是:b
1+1
为什么输出的不是:b
b
?????
...全文
119
10
打赏
收藏
难以理解的String.replaceAll()方法
String a1="a"; String c1="b"; String d1="a"; System.out.println(a1.replaceAll(d1,c1)); String a2="1+1"; String c2="b"; String d2="1+1"; System.out.println(a2.replaceAll(d2,c2)); 输出的是:b 1+1 为什么输出的不是:b b ?????
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
crazylaa
2010-05-15
打赏
举报
回复
[Quote=引用 6 楼 bao110908 的回复:]
普通替换请使用 replace 方法,而不是 replaceAll。
replace 与 replaceAll 都是替换所有的,不要被方法名所迷惑了。前者使用字符串进行替换,而后者是采用正则表达式进行替换。
[/Quote]
哦也
茫茫大海
2010-05-15
打赏
举报
回复
[Quote=引用 1 楼 knightzhuwei 的回复:]
replaceAll的第二个参数是正则表达式 +号在正则里有特殊含义 所以1+1里的加号需要转义
System.out.println(a2.replaceAll(d2,"1\+1"));
[/Quote]
顶
alex44667416
2010-05-15
打赏
举报
回复
得多看看API!
火龙果被占用了
2010-05-15
打赏
举报
回复
如果把
replace 方法名不变
replaceAll 方法名改为 replaceRegex
可能就更好理解一些了。
火龙果被占用了
2010-05-15
打赏
举报
回复
普通替换请使用 replace 方法,而不是 replaceAll。
replace 与 replaceAll 都是替换所有的,不要被方法名所迷惑了。前者使用字符串进行替换,而后者是采用正则表达式进行替换。
若鱼1919
2010-05-15
打赏
举报
回复
System.out.println(a2.replaceAll("1+1","b"));//这句话的意思是:把1个或者多个1,后面跟着一个1替换成b,显然a2当中没有符合条件的,因此,原样输出
若鱼1919
2010-05-15
打赏
举报
回复
[Quote=引用 1 楼 knightzhuwei 的回复:]
replaceAll的第二个参数是正则表达式 +号在正则里有特殊含义 所以1+1里的加号需要转义
System.out.println(a2.replaceAll(d2,"1\+1"));
[/Quote]
应该是:System.out.println(a2.replaceAll("1\\+1",c2));
knightzhuwei
2010-05-15
打赏
举报
回复
[Quote=引用 1 楼 knightzhuwei 的回复:]
replaceAll的第二个参数是正则表达式 +号在正则里有特殊含义 所以1+1里的加号需要转义
System.out.println(a2.replaceAll(d2,"1\+1"));
[/Quote]
不对 应该是
System.out.println(a2.replaceAll("1\+1",c2));
若鱼1919
2010-05-15
打赏
举报
回复
System.out.println(a2.replace(d2,c2));//这样就可以了
replaceAll是正则替换,而在正则中,+是有特殊意义的
knightzhuwei
2010-05-15
打赏
举报
回复
replaceAll的第二个参数是正则表达式 +号在正则里有特殊含义 所以1+1里的加号需要转义
System.out.println(a2.replaceAll(d2,"1\+1"));
JAVA中
string
.replace()和
string
.
replaceAll
()的区别及用法 数据库中[]转义
本文详细介绍了Java中
String
类的replace()和
replaceAll
()
方法
的区别及用法。replace()用于替换指定字符,而
replaceAll
()则利用正则表达式进行替换。文章通过实例展示了如何正确使用这两个
方法
。
Java中
String
字符串替换函数replace()
方法
和
replaceAll
()
方法
区别及实战详解
本文详细介绍了Java中
String
类的replace()和
replaceAll
()
方法
,包括它们的用途、参数、返回值以及实际应用场景。replace()
方法
用于用新的字符替换旧的字符,而
replaceAll
()
方法
则使用正则表达式进行替换操作。通过实例演示了这两个
方法
的使用,帮助开发者
理解
它们的区别和选择合适的
方法
进行字符串处理。
String
的几种replace()
方法
本文详细解析了Java中
String
和
String
Builder类的替换
方法
,包括
String
的replace、
replaceAll
、replaceFirst及
String
Builder的replace
方法
的使用场景与参数说明,帮助读者深入
理解
这两种数据类型的替换操作。
jdk中
String
对象的replace和
replaceAll
方法
本文讨论了Java中
String
类的replace和
replaceAll
方法
在命名上的问题,指出容易引起误解,提出更清晰命名的建议。
从JDK看看Java中
String
使用replace()
方法
和
replaceAll
()
方法
进行子串替换
本文深入探讨了Java中
String
类的replace()与
replaceAll
()
方法
的区别及应用场景。通过具体案例解析了这两种
方法
如何处理字符串中的特殊字符替换,特别是正则表达式中的符号,并提供了JDK官方文档的解释。
Java SE
62,620
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章