【发布时间】:2013-09-24 11:04:57
【问题描述】:
我的程序从文件中读取一行。此行包含逗号分隔的文本,例如:
123,test,444,"don't split, this",more test,1
我希望拆分的结果是这样的:
123
test
444
"don't split, this"
more test
1
如果我使用String.split(","),我会得到这个:
123
test
444
"don't split
this"
more test
1
换句话说:子字符串"don't split, this" 中的逗号不是分隔符。如何处理?
【问题讨论】:
-
为什么有这个要求?您能否提供更多有关您要解决的问题的信息?
-
我不相信这个问题与前面提到的问题重复,因为这里双引号的字符串用逗号分隔;前面的问题没有这个要求。它希望(给出的示例)
foo,bar,c;qual="baz,blurb",d;junk="quux,syzygy"被拆分为foo、bar、c;qual="baz,blurb"和d;junk="quux,syzygy"。这不是一个微不足道的区别,因为匹配@LAFKsaysReinstateMonica 的正则表达式"\"[^\"]*\"|[^,]+在这里有效,但在那里无效。我已投票决定重新开放。