jdk的replaceAll方法使用的是正则表达试,关于特殊字符转义问题:
{[(等刮号使用的时候只要在前面加在\\即可以
例如:System.out.println("aaadd{yy}".replaceAll("\\{yy\\}","我"));
文件路径转移:四个反斜杠等于'\'
/**
* 路径统一符号切换
* @param path
* @param separator
* @return
*/
public static String returnPathCaseSeparator(String path,String separator){
if(separator.equals(File.separator) || separator.equals("\\")){
separator="\\\\";//四个反斜杠等于'\'
}
path=path.replaceAll("/", separator).replaceAll("\\\\", separator).replaceAll("//", separator).replaceAll("\\\\\\\\", separator);
return path;
}
点的转义:. ==> u002E
美元符号的转义:$ ==> u0024
乘方符号的转义:^ ==> u005E
左大括号的转义:{ ==> u007B
左方括号的转义:[ ==> u005B
左圆括号的转义:( ==> u0028
竖线的转义:| ==> u007C
右圆括号的转义:) ==> u0029
星号的转义:* ==> u002A
加号的转义:+ ==> u002B
问号的转义:? ==> u003F
反斜杠的转义: ==> u005C
例子
String a="aaa/bbbb/c-*.xml";
System.out.println(a.split("\\u002A")[1]);