字符串替换之replace和replaceAll的区别

replace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是:

1)replace: 的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也就是字符串);

  1. replaceAll: 的参数是regex,即基于规则表达式的替换,比如,可以通过replaceAll("\\d", "*")把一个字符串所有的数字字符都换成星号;

相同点是都是全部替换,即把源字符串中的某一字符或字符串全部换成指定的字符或字符串,如果只想替换第一次出现的,可以使用 replaceFirst(),这个方法也是基于规则表达式的替换,但与replaceAll()不同的是,只替换第一次出现的字符串;

另外,如果replaceAll()和replaceFirst()所用的参数据不是基于规则表达式的,则与replace()替换字符串的效果是一样的,即这两者也支持字符串的操作;

相关推荐
天天摸鱼的java工程师44 分钟前
你如何处理一个高并发接口的线程安全问题?说说你做过的优化措施
java·后端
Micro麦可乐1 小时前
最新Spring Security实战教程(十八)安全日志与审计:关键操作追踪与风险预警
java·spring boot·后端·安全·spring·安全审计
刘一说2 小时前
资深Java工程师的面试题目(六)数据存储
java·开发语言·数据库·面试·性能优化
江沉晚呤时2 小时前
EventSourcing.NetCore:基于事件溯源模式的 .NET Core 库
java·开发语言·数据库
考虑考虑2 小时前
JDK17中的Sealed Classes
java·后端·java ee
写bug写bug2 小时前
深入理解Unsafe类
java·后端
星垣矩阵架构师2 小时前
六.架构设计之存储高性能——缓存
java·spring·缓存
刃神太酷啦2 小时前
聚焦 string:C++ 文本处理的核心利器--《Hello C++ Wrold!》(10)--(C/C++)
java·c语言·c++·qt·算法·leetcode·github
TeamDev2 小时前
在 Java 应用中构建双向数据保护
java·前端框架·全栈
天天摸鱼的java工程师2 小时前
Spring 事务传播机制你了解吗?事务嵌套时你遇到过什么坑?
java·后端·面试