我有一个模糊的字符串:
foo,bar,c;qual="baz,blurb",d;junk="quux,syzygy"
Run Code Online (Sandbox Code Playgroud)
我想用逗号分割 - 但我需要在引号中忽略逗号.我怎样才能做到这一点?好像正则表达式方法失败了; 我想我可以在看到引号时手动扫描并进入不同的模式,但是使用预先存在的库会更好.(编辑:我想我的意思是已经是JDK的一部分或已经是Apache Commons等常用库的一部分的库.)
上面的字符串应该分成:
foo
bar
c;qual="baz,blurb"
d;junk="quux,syzygy"
Run Code Online (Sandbox Code Playgroud)
注意:这不是CSV文件,它是包含在具有更大整体结构的文件中的单个字符串
我的程序从文件中读取一行.这一行包含逗号分隔的文本,如:
123,test,444,"don't split, this",more test,1
Run Code Online (Sandbox Code Playgroud)
我想分裂的结果是这样的:
123
test
444
"don't split, this"
more test
1
Run Code Online (Sandbox Code Playgroud)
如果我使用String.split(","),我会得到这个:
123
test
444
"don't split
this"
more test
1
Run Code Online (Sandbox Code Playgroud)
换句话说:子字符串中的逗号"don't split, this"不是分隔符.怎么处理这个?
在此先感谢..雅各布