次の行を持つcsvファイルがあります。あなたが見ることができるように、数字は二重引用符で囲まれていません。csvで不要な二重引用符を削除するJava正規表現
String theLine = "Corp:Industrial","5Nearest",51.93000000,"10:21:29","","","","10:21:29","7/5/2016","PER PHONE CALL WITH SAP, CORRECTING "C","359/317 97 SMRD 96.961 MADV",""
は、私が上記の行を読み取ろうと、私はそれをしたいのように、このすべてのコンマで分割しない正規表現
String[] tokens = theLine.split(",(?=(?:[^\"]*\"[^\"]*\")*(?![^\"]*\"))");
を使用して分割しました。 "「C」を訂正すると、1つの電話でコールすると、「(カンマ)」と「(二重引用符)」が追加されているため、「C」には電話がかかっています。いくつか私は2つの二重引用符で二重引用符とコンマをエスケープする正規表現を書くことができますか?
私は基本的にしたい:
"Corp:Industrial","5Nearest",51.93000000,"10:21:29","","","","10:21:29","7/5/2016","**PER PHONE CALL WITH SAP CORRECTING C**","359/317 97 SMRD 96.961 MADV",""
[編集]オプションを使用し、コード例を 'code block'(エディタメニューの' {} 'アイコン)で囲みます。このようにして '*'や '' \ ''のようなすべての文字が出力されます。 – Pshemo
そのCSV回線を生成しているソースを変更できますか?アンバランスな/エスケープされていない引用符を持っているので、正しく機能しません。 – Pshemo
これらの孤立したクォートが決してコンマの近くにないことが分かっていれば、簡単に解決できます。そうでなければ、各フィールドがどのように見えるかを知ることができます。 –