import java.io.File;
import java.util.regex.Matcher;
import java.util.regex.Pattern;public class test {
public static void main(String args[]){
File file = new File("d:\\\\\\\\TEMP.txt");
System.out.println(file.getPath());
}
}
这里用了8个“\”也能编译通过,正常的正则不是2个“\”就够了么?这样写没有错么?另外麻烦问下,正则是只有在“”中用么?所有的浏览器都支持正则么?有没有不支持的?谢谢!
import java.util.regex.Matcher;
import java.util.regex.Pattern;public class test {
public static void main(String args[]){
File file = new File("d:\\\\\\\\TEMP.txt");
System.out.println(file.getPath());
}
}
这里用了8个“\”也能编译通过,正常的正则不是2个“\”就够了么?这样写没有错么?另外麻烦问下,正则是只有在“”中用么?所有的浏览器都支持正则么?有没有不支持的?谢谢!
如果是偶数个\的话 才会是这样d:\emp.text
你就算new File("我爱北京天安门")也能编译过去
但是。net项目中 支持多个/ 以及 路径大小写、、
你说的是存储层面的问题了。最后按ASCII存还是UTF-8,UTF-16或其他编码方式存看实际情况。
字符串中有一些特殊字符,比如最常见的"引号,假如你想要存一个有引号的字符串,如"louzhu"weiwu",这时编译就会把第二个引号当成字符串结束符,从而导致剩下的部分编译错误,这时就需要转义字符告诉编译器第二个是字符串的一部分,而不是结束字符:"louzhu\"weiwu",这样就能正确解析了。
回到问题,当编译器发现\后面跟一个不需要转义的字符时就会发生编译错误。
楼主明白了吧?