博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
replace和replaceAll方法 的区别
阅读量:5933 次
发布时间:2019-06-19

本文共 1010 字,大约阅读时间需要 3 分钟。

replace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是: 1)replace的参数是char和CharSequence,既可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也就是字符串); 2)replaceAll的参数是regex,即基于规则表达式的替换,比如,可以通过replaceAll("\\d", "*")把一个字符串所有的数字字符都换成星号; 相同点是都是全部替换,即把源字符串中的某一字符或字符串全部换成指定的字符或字符串,如果只想替换第一次出现的,可以使用 replaceFirst(),这个方法也是基于规则表达式的替换,但与replaceAll()不同的时,只替换第一次出现的字符串; 另外,如果replaceAll()和replaceFirst()所用的参数据不是基于规则表达式的,则与replace()替换字符串的效果是一样的,即这两者也支持字符串的操作; 还有一点注意:执行了替换操作后,源字符串的内容是没有发生改变的. 举例如下: String src = new String("ab43a2c43d");         System.out.println(src.replace("3","f"));=>ab4f2c4fd. ( 把3替换成f)         System.out.println(src.replace('3','f'));=>ab4f2c4fd.         System.out.println(src.replaceAll("\\d","f"));=>abffafcffd. (把所有的3都替换成f)         System.out.println(src.replaceAll("a","f"));=>fb43f2c43d.  (把所有的a都替换成f)         System.out.println(src.replaceFirst("\\d,"f"));=>abf32c43d (把第一次出现的数字替换成f)         System.out.println(src.replaceFirst("4","h"));=>abh32c43d. (把第一次出现的4替换成h)

转载于:https://www.cnblogs.com/fu512/p/7093470.html

你可能感兴趣的文章
澳大利亚政府想让ISP拦截恶意软件
查看>>
手机停机号码被回收后容易信息泄露?工信部说这样做
查看>>
《数据分析实战:基于EXCEL和SPSS系列工具的实践》——3.4 数据量太大了怎么办...
查看>>
JavaScript应用开发实践指南迷你书
查看>>
autoconf,automake,libtool
查看>>
F5+IIS7.5 SNAT日志记录真实源IP
查看>>
【 Visual C++】游戏开发笔记之二——最简单的DirectX,vc窗口的编写
查看>>
jQuery的技巧01
查看>>
Spring5 异步事件
查看>>
基于泛型实现的ibatis通用分页查询
查看>>
[转]JSP的九大内置对象及四个作用域
查看>>
macOS 自定义场景以快速切换不同的网络连接参数
查看>>
Ubuntu环境下如何安装LAMP组件?
查看>>
Android之高仿手机QQ聊天
查看>>
gopacket 使用
查看>>
AlertDialog对话框
查看>>
全文检索Solr集成HanLP中文分词
查看>>
samba服务搭建
查看>>
WinAPI 字符及字符串函数(2): CharLowerBuff - 把缓冲区中指定数目的字符转小写
查看>>
官方的正则表达式组件 RegularExpressions (5) : 强测试
查看>>