我想使用java将文本拆分为单个单词。
SalesCost for State,测试,“2011年10月28日00:00:00”,12
期待结果:
1.SalesCost for state
2.testing
3.“2011年10月28日00:00:00”
4.12
以逗号分隔的拆分不合适。
还有其他解决方案吗? 非常感谢任何建议。
-spk -
答案 0 :(得分:3)
您是否正在尝试解析CSV文件?看起来像那样。无论如何,你可以试试OpenCSV。您还可以使用它来解析逗号分隔的String并定义转义字符,如引号。
答案 1 :(得分:3)
String.split()
使用正则表达式。所以你可以使用负面预测来做到这一点。
尝试这样的事情:
split("(?!\\"),(?!\\")");
我没有尝试过这个特定的正则表达式,但是可以使用它并参考API文档。在一天结束时,这应该有效。
但您似乎只想解析CSV格式。所以,我建议你使用CSV解析器。例如,这一个:http://opencsv.sourceforge.net/
答案 2 :(得分:1)
看起来像CSV。使用http://sourceforge.net/projects/javacsv/
您可以设置列和行分隔符以及文本引用。
答案 3 :(得分:0)
如果您可以在逗号分隔字段之前始终期望空格,则可以始终将其添加到分隔符以避免在日期中分隔逗号。通过任何方式都不是那么灵活,但如果可以安全地使用数据,则可能会更加快捷。