正規表現を使用して csv ファイルの値を分離しようとしています。問題は、文が引用符で囲まれていることと、試した正規表現が正しく機能していないように見えることです。
"All's Well, Ends Well 2012",Comedy
これは CSV に含まれる文字列の 1 つであり、かなりの数の異なる正規表現ステートメントで分離しようとしましたが、分離せずに文字列全体を返し続けます。
これに使用できる正規表現に関するアドバイスや回避策はありますか?
http://opencsv.sourceforge.net/などの CVS パーサーを使用することをお勧めします。正規表現は CSV の解析に最適な選択肢ではありません。
split()
入力の残りの部分に偶数個の引用符が表示される場合にのみ、コンマで分割する正規表現を使用します。
String[] parts = line.split(",(?=(([^\"]*\"){2})*[^\"]*$)");
ideoneのライブ デモでこのコードの実行を確認してください