我想用java將文本分成單個單詞。java中的分詞
SalesCost的國家,測試, 「2011年10月28日00:00:00」,12
期望的結果:
1.SalesCost國有
2.testing
3。 「2011年10月28日00:00:00」
4.12
逗號分隔拆分不正確。
有沒有其他解決方案呢? 任何建議,非常感謝。
-spk-
我想用java將文本分成單個單詞。java中的分詞
SalesCost的國家,測試, 「2011年10月28日00:00:00」,12
期望的結果:
1.SalesCost國有
2.testing
3。 「2011年10月28日00:00:00」
4.12
逗號分隔拆分不正確。
有沒有其他解決方案呢? 任何建議,非常感謝。
-spk-
您是否試圖解析CSV文件?看起來像那樣。無論如何,你可以試試OpenCSV。您也可以使用它來分析逗號分隔的字符串,並像引號一樣定義轉義字符。
它看起來像CSV。使用http://sourceforge.net/projects/javacsv/
您可以設置列和行分隔符和文本引用。
String.split()
使用正則表達式。所以你可以使用負面預測來做到這一點。
嘗試這樣:
split("(?!\\"),(?!\\")");
我還沒有試過這種特定的正則表達式,但玩一點點與它指的API文檔。在一天結束時,這應該起作用。
但看來你只是想解析CSV格式。所以,我建議你使用CSV解析器。例如這一個:http://opencsv.sourceforge.net/
嗨,亞歷克斯,你能解釋一下這個正則表達式嗎? – sprabhakaran 2011-12-20 09:27:21
如果您總是可以期待逗號分隔字段之前的空格,您可以隨時將其添加到您的分隔符以避免在日期逗號分裂。沒有任何方法靈活,但如果數據安全使用可能會更快。
獲取CSV解析庫。 http://stackoverflow.com/questions/2053761/what-is-a-good-csv-java-utility – Thilo 2011-12-20 08:28:45
「/ W +」將做到這一點..include在正則表達式.. – 2011-12-20 08:29:38
@SrinivasReddyThatiparthy好像你最終一樣的問題。它應該在日期中匹配「,」,否? – Matt 2011-12-20 08:34:07