2013-04-25 77 views
1

我试图分割一个字符串,每当它有一个逗号。Java字符串拆分:“忽略”拆分参数

String myString = "\"Shire, Middle Earth\",Hobbits, J.R.R Tolkien"; 

我的字符串打印出来是:“Shire,Middle Earth”,Hobbits,J.R.R.托尔金

注意到有希雷和中东地球

当我做了以下之间的空间......

String[] myString = line.split(","); 

它计算夏尔和中东地球之间的逗号作为一个逗号分割数据a(它应该)。我怎样才能让它“忽略”那个逗号?

+1

简而言之,不要使用数据中可能出现的分隔符。如果逗号可能出现在令牌中,则不要使用逗号分隔令牌。 – Aurand 2013-04-25 05:02:54

+0

不幸的是,我的字符串来自一个使用逗号分隔数据的文件:'(如果可能,我肯定会使用不同的分隔符! – JavaJew22 2013-04-25 05:04:58

回答

3

试试这个:

line.split(",(?!\\s)") 

这是正则表达式前瞻。你可以看到这个链接here