很多特殊符号和特殊组成需要替换,replace方法是基于正则表达式的,所以有些符号不能直接替换需要转义。
以下是常用转义
public static void main(String[] args) {
/**
* 原文:123123{wter
* 替换:{
*
* 输出:123123{wter ---> 123123wter
*/
String s1 = "123123{wter";
System.out.print(s1 + " ---> ");
System.out.println(s1.replaceAll("\\{",""));
/**
* 原文:123123}wter
* 替换:}
*
* 输出:123123}wter ---> 123123wter
*/
String s11 = "123123}wter";
System.out.print(s11 + " ---> ");
System.out.println(s11.replaceAll("}",""));
/**
* 原文:123123"{wter
* 替换:"{
*
* 输出:123123"{wter ---> 123123{wter
*/
String s2 = "123123\"{wter";
System.out.print(s2 + " ---> ");
System.out.println(s2.replaceAll("\"\\{","{"));
/**
* 原文:123123}"wter
* 替换:}"
*
* 输出:123123}"wter ---> 123123}wter
*/
String s22 = "123123}\"wter";
System.out.print(s22 + " ---> ");
System.out.println(s22.replaceAll("}\"","}"));
/**
* 原文:1234\1221
* 替换:\
*
* 输出:1234\1221 ---> 12341221
*/
String s3 = "1234\\1221";
System.out.print(s3 + " ---> ");
System.out.println(s3.replaceAll("\\\\",""));
/**
* 原文:1234\n1221
* 替换:\n
*
* 输出:1234\n1221 ---> 12341221
*/
String s4 = "1234\\n1221";
System.out.print(s4 + " ---> ");
System.out.println(s4.replaceAll("\\\\n",""));
/**
* 原文:1234|1221
* 替换:|
*
* 输出:1234|1221 ---> 12341221
*/
String s5 = "1234|1221";
System.out.print(s5 + " ---> ");
System.out.println(s5.replaceAll("\\|",""));
/**
* 原文:1234?1221
* 替换:? . ) ( $ * + [ ^
* 以上符号同理
*
* 输出:1234?1221 ---> 12341221
*/
String s6 = "1234?1221";
System.out.print(s6 + " ---> ");
System.out.println(s6.replaceAll("\\?",""));
/**
* 原文:1234]1221
* 替换:]
*
* 输出:1234]1221 ---> 12341221
*/
String s7 = "1234]1221";
System.out.print(s7 + " ---> ");
System.out.println(s7.replaceAll("]",""));
/**
* 原文:1234/1221
* 替换:/
*
* 输出:1234/1221 ---> 12341221
*/
String s8 = "1234/1221";
System.out.print(s8 + " ---> ");
System.out.println(s8.replaceAll("/",""));
}