String的split()方法的疑问

burningbloog 2009-10-13 12:09:01
我想完成像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()方法不能按照"."来拆分字符串,换成“,”就能到达效果了,这是为什么?
...全文
126 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
asdfgcjw 2011-09-30
  • 打赏
  • 举报
回复
用个集合吧
huchunhua001 2011-09-30
  • 打赏
  • 举报
回复
String.split("[.])
这样也行。。。
liuhua_sun 2009-10-14
  • 打赏
  • 举报
回复
嗯!学习了!顶啊!
不善^ 2009-10-13
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 chineseenglanddzm 的回复:]
String.split("\\.")
.是转义字符,必须得加"\\";
[/Quote]
swandragon 2009-10-13
  • 打赏
  • 举报
回复
.在正则表达式中有特殊含义
需要转义才可以
String[] array = path.split("\\.");
chineseenglanddzm 2009-10-13
  • 打赏
  • 举报
回复
String.split("\\.")
.是转义字符,必须得加"\\";
wd9053 2009-10-13
  • 打赏
  • 举报
回复
参见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]
liwenso 2009-10-13
  • 打赏
  • 举报
回复
\\.
让我想起曾经我也遇到过这个问题
closewbq 2009-10-13
  • 打赏
  • 举报
回复
= =!
cwjieNo1 2009-10-13
  • 打赏
  • 举报
回复
String.split("\\."),属于特殊字符,需要转义·
coolbamboo2008 2009-10-13
  • 打赏
  • 举报
回复
呵呵,大家都说了,帮顶吧
tfsict2008 2009-10-13
  • 打赏
  • 举报
回复
\\.
virginkj 2009-10-13
  • 打赏
  • 举报
回复
String.split("\\.")
amdgaming 2009-10-13
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 swandragon 的回复:]
.在正则表达式中有特殊含义
需要转义才可以
String[] array = path.split("\\.");

[/Quote]
是这样,我也遇到过。呵呵
lxxzhy 2009-10-13
  • 打赏
  • 举报
回复
\\.

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧