在正则表达式里面匹配一个斜杠,需要用4个斜杠:
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- public class test {
- /**
- * @param args
- */
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- String textString = new String ("\\\"");
- Pattern pt=Pattern.compile("\\\\\"");
- Matcher mc=pt.matcher(textString);
- mc.replaceAll("xx");
- //textString.replaceAll("\\", "xx");
- String bl=mc.replaceAll("xx");
- System.out.println(textString);
- System.out.println(bl);
- }
- }
分析一下“\\\\”,第一个斜杠是转义符,第二个斜杠是斜杠本身,第三个斜杠是转义符,第四个斜杠是斜杠本身。
有2点要清楚:
1.字符串里面表示斜杠就需要两个斜杠如“\\”
2.正则表达式里的斜杠需要转意,是用“\\”标示。
这样就比较好解释:
我们先要表示正则表达式里面的斜杠“\\”,然后再用字符串表示出来。而这2个斜杠分别需要一个转义符,这样就成了4个斜杠在正则表达式里面表示一个斜杠。 原来是这样! <!--EndFragment-->