package day_6_9;
import java.util.Scanner;
public class ReplaceDemo {
public static void main(String[] args) {
System.out.println("请输入字符串:");
String str=new Scanner(System.in).next();//从键盘上读取字符串流 a1b2c3abcd123
/**
* replace和replaceAll是JAVA中常用的替换字符的方法
*
* )replace的参数是char和CharSequence,即可以支持字符的替换,
*
* replaceAll的参数是regex,即基于规则表达式的替换,比如,
* 可以通过replaceAll("\\d", "*")把一个字符串所有的数字字符都换成星号;
* 如何将字符串中的"\"替换成"\\":
String msgIn;
String msgOut;
msgOut=msgIn.replaceAll("\\\\","\\\\\\\\");
原因:
'\'在java中是一个转义字符,所以需要用两个代表一个。
例如System.out.println( "\\" ) ;只打印出一个"\"。
但是'\'也是正则表达式中的转义字符(replaceAll 的参数就是正则表达式),需要用两个代表一个。
所以:\\\\被java转换成\\,\\又被正则表达式转换成\。
将字符串中的'/'替换成'\'的几种方式:
msgOut= msgIn.replaceAll("/", "\\\\");
msgOut= msgIn.replace("/", "\\");
msgOut= msgIn.replace('/', '\\');
*/
System.out.println(str.replace("1", "f"));//afb2c3abcdf23
System.out.println(str.replace('1', 'f'));//afb2c3abcdf23
System.out.println(str.replaceAll("\\d", "f"));//afbfcfabcdfff
System.out.println(str.replaceAll("a", "f"));//f1b2c3fbcd123
System.out.println(str.replaceFirst("\\d", "f"));//afb2c3abcd123
System.out.println(str.replaceFirst("1", "f"));//afb2c3abcd123
}
}
java--replace()、replaceAll()、replcaeFirst()
最新推荐文章于 2024-08-11 23:38:14 发布