java字符串替换字符串_java string 字符串替换
i、replace方法
该方法的作用是替换字符串中所有指定的字符,然后生成一个新的字符串。经过该方法调用以后,原来的字符串不发生改变。例如:
String s = “abcat”;
String s1 = s.replace(‘a’,‘1’);
该代码的作用是将字符串s中所有的字符a替换成字符1,生成的新字符串s1的值是“1bc1t”,而字符串s的内容不发生改变。
如果需要将字符串中某个指定的字符串替换为其它字符串,则可以使用replaceAll方法,例如:
String s = “abatbac”;
String s1 = s.replaceAll(“ba”,“12”);
该代码的作用是将字符串s中所有的字符串“ab”替换为“12”,生成新的字符串“a12t12c”,而字符串s的内容也不发生改变。
如果只需要替换第一个出现的指定字符串时,可以使用replaceFirst方法,例如:
String s = “abatbac”;
String s1 = s. replaceFirst (“ba”,“12”);
该代码的作用是只将字符串s中第一次出现的字符串“ab”替换为字符串“12”,则字符串s1的值是“a12tbac”,字符串s的内容也不发生改变。
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.
System.out.println(src.replace('3','f'));=>ab4f2c4fd.
System.out.println(src.replaceAll("\\d","f"));=>abffafcffd.
System.out.println(src.replaceAll("a","f"));=>fb43fc23d.
System.out.println(src.replaceFirst("\\d,"f"));=>abf32c43d
System.out.println(src.replaceFirst("4","h"));=>abh32c43d.
如何将字符串中的"\"替换成"\\":
String msgIn;
String msgOut;
msgOut=msgIn.replaceAll("\\\\","\\\\\\\\");
原因:
'\'在java中是一个转义字符,所以需要用两个代表一个。例如System.out.println( "\\" ) ;只打印出一个"\"。但是'\'也是正则表达式中的转义字符(replaceAll 的参数就是正则表达式),需要用两个代表一个。所以:\\\\被java转换成\\,\\又被正则表达式转换成\。
同样
CODE: \\\\\\\\
Java: \\\\
Regex: \\
将字符串中的'/'替换成'\'的几种方式:
msgOut= msgIn.replaceAll("/", "\\\\");
msgOut= msgIn.replace("/", "\\");
msgOut= msgIn.replace('/', '\\');
java字符串替换字符串_java string 字符串替换相关推荐
- java string补空格_Java String字符串补0或空格详解
Java String字符串补0或空格 import java.text.NumberFormat; //1.Java 中给数字左边补0 public class NumberFormatTest { ...
- java用 拼接字符串的原理_Java String 拼接字符串原理详解
首先来一道思考题: String str1 = "111111"; String str2 = "222222"; String str = str1 + st ...
- java中对字符串进行解析_Java中字符串解析
1.字符串不属于基本数据类型(基本数据类型有[byte,int,char,float,double,boolean,short,long]),字符串由单个或多个字符组成,本质上是字符数组,Java中提 ...
- java使用replace方法修改String字符串内容不起作用
今天写代码的时候使用replace方法进行string字符串元素的替换,刚开始的写法如下: String a = "hellp"; a.replace("p", ...
- java面试题,将String字符串转换成数字
2019独角兽企业重金招聘Python工程师标准>>> 题目要求:将String字符串转换成数字,不能用java自带的方法转换字符串,要求自己写一个atoi(String s),如果 ...
- JAVA进阶开发之(String字符串的存储原理)
我们现在开始学习的就是一些工具类 这些工具类只需要我们学会查阅帮助文档进行开发就可以实现很多功能 例如:我们查看工具类String 关于java JDK中内置的一个类:java.lang.String ...
- java查找字符位置_java 查找字符串所在的位置代码
使用了 string 类的 indexof() 方法在字符串中查找子字符串出现的位置,如过存在返回字符串出现的位置(第一位为0),如果不存在返回 -1.方便判断和截取字符串! 语法:stringobj ...
- Java的socket连接以及string字符串长度过长解决
一.socket连接服务: 1.客户端:Java package cn.lw;import java.io.BufferedReader; import java.io.BufferedWriter; ...
- java字符串转list_java将String字符串转换为ListLong类型实例方法
在一些应用场景当中,我们可能会遇到以下的场景,我们要使用的类型是List类型,但是接收到的参数是Stirng类型如1,2,3,4等这样的形式 那么我们可以通过采用以下的代码完成以上需求的转换 priv ...
- java字符串去掉中文_Java——去除字符串中的中文
import java.util.regex.Matcher; import java.util.regex.Pattern; public class RemoveStrChinese { priv ...
最新文章
- 【golang程序包推荐分享】go-ini、viper、godoc
- 数据结构_顺序栈的代码实践
- oracle中substr() instr() 用法
- jQuery效果之滑动
- SQL 查询总是先执行SELECT语句吗?
- OpenStack精华问答 | NOVA计算服务
- Mysql报错130_Mysql报错Forcing close of thread 139 user: 'root'
- C++ builder报错
- mysql的日备份和周备份_MySQL完全备份
- 最小二乘法系统辨识小结
- Eclipse配置android开发环境详解
- MFC 鼠标画线总结
- html2canvas给图片添加水印,canvas 为图片添加水印
- Optional使用示例
- Flutter项目调用APP原声页面,使用iOS的Framework,安卓的aar,so文件
- Android7.0 数据业务长连接拨号过程
- DjangoRestFramework使用自定义权限
- 欢送离职同事聚餐通知
- 工程硕士+计算机技术,改革计算机技术工程硕士在职研究生选拨制度
- oracle 查询教师所有的单位即不重复的Depart列
热门文章
- matlab 加权回归估计_Matlab:地理加权回归基本操作
- 戴上这个之后,你再也不是个凡人(doge)
- wechat 微信ipad协议GO版本 最新不封号 长链接 完整版
- react 使用iconfont 图标
- 计算机应用基础说课稿的模板,计算机应用基础说课稿模板.doc
- matlab一维otsu算法,[转载]matlab graythresh()函数(Otsu算法)
- 日常中的迅捷PDF转换器
- Xubantu安装google 输入法以及You‘re currently running Fcitx with GUI, but fcitx-configtool couldn‘t be found
- Ajax的三种写法(最原始的写法+最常用的写法+最简便的写法)
- qt QFont字体英文