在jdk1.4下,用String.replaceAll,替换:
"\\"转为"\"
"\|"转为"|"
"\:"转为":"
"\="转为"="
用正则表达式如何实现?
如下写法试了一下不能实现:
message=message.replace("\\\\", "\\");
message=message.replace("\\:", ":");
message=message.replace("\\=", "=");
message=message.replace("\\|", "|");
"\\"转为"\"
"\|"转为"|"
"\:"转为":"
"\="转为"="
用正则表达式如何实现?
如下写法试了一下不能实现:
message=message.replace("\\\\", "\\");
message=message.replace("\\:", ":");
message=message.replace("\\=", "=");
message=message.replace("\\|", "|");
"\\"转为"\" ss.replaceAll("\\\\\\\\","\\\\")
"\|"转为"|" ss.replaceAll("\\\\","")
下面同理
你可以用方法replaceAll试一下
我的是 1.6
replace都能实现
String ss="\\\\";//ss.replaceAll("\\\\\\\\","\\\\")
String ss="\\|";//ss.replaceAll("\\\\","")
Matcher matcher = pattern.matcher("hhhh\\dddd\\ddd");
String now = matcher.replaceAll("\\");
System.out.println(now);
String[] str = new String[]{"\\\\","\\|","\\:","\\="};
System.out.println(str[0]+" 替换后 "+str[0].replaceAll("\\\\\\\\", "\\\\"));// \需要转义
System.out.println(str[1]+" 替换后 "+str[1].replaceAll("\\\\\\|", "\\|"));// |需要转义
System.out.println(str[2]+" 替换后 "+str[2].replaceAll("\\\\:", ":"));// :不需要转义
System.out.println(str[3]+" 替换后 "+str[3].replaceAll("\\\\\\=", "\\="));// =需要转义