-
2019-03-26 19:47:51
import java.util.Scanner;
public class Demo003{
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("请输入一个字符和字符串:");
String str2=input.next();//输入一个字符
String str1=input.next();//输入一个字符串
String newStr =str1.replace(str2,"");//替换字符串中的字符为空
System.out.println("输出字符为:"+newStr);
}
}更多相关内容 -
Java中替换字符串的方法
2021-10-13 00:40:26Java中替换字符串可以用replace和replaceAll这两种,区别是,1. replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(Ch...Java中替换字符串可以用replace和replaceAll这两种,区别是,
1. replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了就是字符串的意思)。
2. replaceAll的参数是regex或者char,即基于正则表达式的替换,例如,可以通过replaceAll("\\d", "*")将一个字符串所有的数字字符都换成星号,相同点是都是全部替换,即将源字符串中的某一字符或字符串全部换成指定的字符或字符串。
如果只想替换第一次出现的,可以使用replaceFirst(),这个方法也是基于正则表达式的替换,但与replaceAll()不同的是,只替换第一次出现的字符串。
另外,如果replaceAll()和replaceFirst()所用的参数据不是基于正则表达式的,则与replace()替换字符串的效果是一样的,即这两者也支持字符串的操作。
例子,
public class ReplaceChar { public static void main(String[] args) { String strTmp = new String("BBBBBBBYYYYYYY"); strTmp = strTmp.replaceAll ("\\D", "Y"); System.out.println(strTmp); strTmp = strTmp.replaceAll ("Y", "N"); System.out.println(strTmp); strTmp = strTmp.replace("N", "C"); System.out.println(strTmp); strTmp = strTmp.replaceFirst("\\D", "q"); System.out.println(strTmp); } }
运行结果如下:
YYYYYYYYYYYYYY
NNNNNNNNNNNNNN
CCCCCCCCCCCCCC
qCCCCCCCCCCCCC参考资料,
https://www.cnblogs.com/shuilangyizu/p/6612240.html
近期更新的文章:
文章分类和索引:
-
js replace(a,b)之替换字符串中所有指定字符的方法
2020-10-21 17:51:27下面小编就为大家带来一篇js replace(a,b)之替换字符串中所有指定字符的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 -
通过一个map替换字符串中指定的字符变量方法
2020-08-31 02:16:17下面小编就为大家带来一篇通过一个map替换字符串中指定的字符变量方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 -
java正则表达式替换字符串
2015-06-27 09:19:35java正则表达式替换字符串 -
java替换指定位置的字符串
2021-02-04 10:30:33在和安卓部门对接过程中,真的是遇到非常扯淡的问题,我们需要的是一段坐标系的参数,安卓定义的圆形的地理坐标是 "经度 纬度"的形式,也就是说参数是经度+空格+纬度形式,然而到了折线和矩形多边形时,地理坐标却...一、吐槽
在和安卓部门对接过程中,真的是遇到非常扯淡的问题,我们需要的是一段坐标系的参数,安卓定义的圆形的地理坐标是 "经度 纬度"的形式,也就是说参数是经度+空格+纬度形式,然而到了折线和矩形多边形时,地理坐标却变成了 ["经度","纬度","经度","纬度","经度","纬度"]这样的形式,与我们后端的定义接口有问题,后端是["经度 纬度","经度 纬度"]形式,由于项目比较急,一下更改安卓参数来不及了,因此只能含泪更改参数格式。
对于老开发来说,这个规律其实挺简单,就是替换掉奇数位置的 "," 双冒号加逗号变成空格即可。
思路是有了,但是怎么处理呢?
不可能傻傻的去用str.split拆分然后一个一个去判断吧?这样极为复杂,而且还会带来一些奇奇怪怪的bug
给你们看一下我们新来的同事写的代码:
public StringBuffer editParams(String str) { String repl = "\",\""; String[] strArr = str.replaceAll(repl, " ").split(" "); StringBuffer sub = new StringBuffer(); for (int i = 0; i < strArr.length; i++) { if ((i + 1) % 2 == 0 && i + 1 != strArr.length) { sub.append(strArr[i]).append("\",\""); } else { sub.append(strArr[i]).append(" "); } } return sub; }
这样的代码咋一看,确实是没有问题,转换后的代码也符合app到后台的需求格式,后台能够正常解析。
但是,从后台到安卓,我又得将所有的空格替换为 "," 符号!问题就来了,他的代码不知道咋回事,后面就多了一个空格,导致解析的数据会多了一个 "," 符号,会造成安卓解析失败!他的解决办法估计又得添加多个条件判断,谁知道后续还有没有坑?
为了实现一个简单思路,添加了这么多的判断逻辑,在我认为这是得不偿失的。
二、解决办法
我这里只要替换掉奇数位置的 "," 为空格即可,那么阅读过String源码的同学肯定会第一时间想到正则表达式,这里不要觉得正则表达式耗费性能哈,String源码都用了正则表达式,你还有啥资格在这里BB?
下面就是我的解决思路,不仅是奇数位置,偶数位置,第一个位置等等等,皆可以实现,而且不会多出无用的空格,经过对接测试,表现完美。
private String appTransToMap(String string) { int count = 1; String findText = "\",\"";//要替换的符号 Pattern p = Pattern.compile(findText); Matcher m = p.matcher(string);//替换的符合与要对比的符号进行匹配 StringBuffer sb = new StringBuffer(); while (m.find()) { count = count + 1; if (count % 2 == 0) {//这里为什么是等于0而不是1呢?因为我的count定义就是1而不是0 m.appendReplacement(sb," ");//会将替换后的结果存在sb中 } } m.appendTail(sb);//这段代码必须要添加 return sb.toString(); }
-
java替换指定文件中指定的字符串参考代码
2011-11-18 21:37:04java替换指定文件中指定的字符串参考代码 -
Java字符串替换指定位置的字符
2022-03-25 09:04:32 -
java string中的替换字符串
2021-02-12 09:05:27可在寄存汉字2、java中replace用法举例:replace(char oldChar, char newChar)返回一个新的字符串,它是经过用 newChar 交换此字符串中呈现的一切 oldChar 而生成的。如下所示:String sentence1 = "我是中学生";... -
Java替换字符串中所有指定字符
2019-12-23 10:11:06使用Java的replaceAll(String regex, String replacement)函数可替换字符串中所有指定字符。 regex是一个正则表达式,replacement是字符串。用replacement替换所有的regex匹配项。 String str = "{\\\"aaa\\\":\\... -
java string 字符串替换
2021-02-12 12:35:11i、replace方法该方法的作用是替换字符串中所有指定的字符,然后生成一个新的字符串。经过该方法调用以后,原来的字符串不发生改变。例如:Strings=“abcat”;Strings1=s.replace(‘a’,‘1’);该代码的作用是将... -
关于Java中对目标字符串的指定字符的说明
2020-08-12 17:36:01如何在既定的字符串数据中匹配替换指定的字符串? 解决办法: 大致处理步骤如下: 1. 首先判断要处理的字符串是否在既定的字符串数据中出现? 可以用String.contains(String str)实现; 2. 然后Codding要如何... -
Java将指定下标位置多个子字符串替换成指定占位符
2021-02-28 14:15:48示例效果:"my email is foo@bar.com and my number is (213)-XXX-XXXX"替换成"my email is [EMAIL_ADDRESS] and my number is [PHONE_NUMBER]"1、指定位置替换代码import java.util.ArrayList;import java.util.... -
java 替换文件中指定的字符串
2020-10-13 23:15:13import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.InputStreamReader; import java.io.PrintWriter; import java.util.ArrayList; import java.util.List; ... -
java中替换字符串中的字符
2020-11-27 17:26:23java中替换字符串中的字符 public static void main(String[] args) { String string = "aaabbb"; String newString = string.replace('a', 'o'); System.out.println(newString); } -
Java中的字符串怎么替换?
2021-12-06 17:31:04replace() 方法用于将目标字符串中的指定字符(串)替换成新的字符(串),其语法格式如下: 字符串.replace(String oldChar, String newChar) 其中,oldChar 表示被替换的字符串;newChar... -
java实现替换文件中得特定字符串
2013-09-04 15:19:44自己写的一个小工具,用以替换文件中得某些特定字符串,可以是文件夹中得也可以是直接文件。希望对您有所帮助 -
Java替换字符串中指定位置的字符串
2019-10-09 12:46:45Java替换字符串中指定位置的字符串 利用StringBuilder: String str1="123456789你好.jpj"; StringBuilder sb=new StringBuilder(str1); sb.replace(str1.length()-6, str1.length()-4, "nihao"); String str2=... -
java 字符串替换
2022-05-21 21:42:48文章目录字符串替换方法...replace()方法用于将目标字符串中的指定字符(串)替换成新的字符(串)replace(String oldChar, String newChar) replaceFirst() 方法 replaceFirst()方法用于将目标字符串中匹配某正则表达 -
Java替换指定字符串前后的指定字符(类似于String的trim()方法)
2018-03-13 22:31:13Java替换字符串前后的指定字符(类似于String的trim()方法)想到了替换字符串或者正则表达式,但是没想到怎么实现!看来平常得多看看源码!!!2种实现方法,第一种简单但不效率低,不推荐;第二种参考JDK的方法实现... -
Java中正则表达式替换字符串
2022-02-14 16:44:04public static void main(String[] args){ String content="【12306】尊敬的用户你好:您所乘坐的G2546次列车将于2022年02月22日08:00:00出发。\n" + " 温馨提示:\n" + "1.... "2.... "客服电话:0715-29828888或... -
java:删除字符串中指定字符串的方法
2021-02-12 18:18:43有些字符串是我们存储某种类型名称的,往往有逗号‘,’或者其他符号来分隔。如果我们删除某一个参数时,往往没有数组或者列表那么方便。但是,如果有了下面这个方法,我们同样可以做好。public class Test3 {/*** @... -
Java 替换字符串中空格的三种方法
2021-07-14 18:11:191、方法分类 str.trim(); //去掉首尾空格 str.replace(" ",""); //去除所有空格,包括首尾、中间 ... //可以替换大部分空白字符,不限于空格; 2、代码示例 package test; public class Test { /** ... -
Java实现字符串匹配(基于正则)
2020-09-03 01:23:00主要介绍了Java中使用正则表达式实现字符串匹配,字符串查找,匹配,替换,正则无不能做,特别是灵活的运用子串匹配,感兴趣的小伙伴们可以参考一下 -
Java中字符串内容替换
2022-02-15 17:43:01public class replaceAll { public static void main(String[] args) { // TODO Auto-generated method stub String a ... } } 其中replaceall比replace更好用,replace只能替换单个字符 上述代码效果实现如图: