我想完成像MyEclipse中通过一个完整的类路径,它就会自动生成多个路径供选择。如"cn.dragon.service.impl";就能得到cn,cn.dragon,等等。代码如下public static void parseString(String path){
String[] array = path.split(".");
StringBuffer sb = new StringBuffer();
for(int i = 0;i<array.length;i++){
sb.append(array[i]+".");
System.out.println(sb.toString());
}问题是好像split()方法不能按照"."来拆分字符串,换成“,”就能到达效果了,这是为什么?

解决方案 »

  1.   

    参见API
    java.util.regex 
    类 Pattern
    正则表达式的构造摘要 
    预定义字符类 
    . 任何字符(与行结束符可能匹配也可能不匹配)///////////////
    \d 数字:[0-9] 
    \D 非数字: [^0-9] 
    \s 空白字符:[ \t\n\x0B\f\r] 
    \S 非空白字符:[^\s] 
    \w 单词字符:[a-zA-Z_0-9] 
    \W 非单词字符:[^\w] 
      

  2.   

    String.split("\\.")
    .是转义字符,必须得加"\\";
      

  3.   

    .在正则表达式中有特殊含义
    需要转义才可以
    String[] array = path.split("\\.");
      

  4.   

    String.split("\\."),属于特殊字符,需要转义·