Код регулярного выражения для преобразования CSV в строки - PullRequest
1 голос
/ 16 февраля 2011

Мне нужно написать программу на Java, которая преобразует файл CSV в список массивов. Линия CSV выглядит следующим образом:

5/3/2010,"Behrens, Michael Lakeside Apts","Lisle, IL 60532",PD: Noise or domestic reports for 3/25 to 4/28 for specific apt.,5/10/2010, 5/10/2010,1

Мне нужно вот так:

DATE RECEIVED:5/3/2010  
NAME / COMPANY:Behrens, Michael Lakeside Apts  
CITY, STATE, ZIP:Lisle, IL 60532  
Department / Documents:PD: Noise or domestic reports for 3/25 to 4/28 for specific apt.   
Due Date 5 Days 10 Days:5/10/2010  
DATE COMPLETED:5/10/2010  
Hours Spent Fulfilling Request:1

Пока у меня есть это: ,|[\"] но мне нужно удалить , из ""

1 Ответ

4 голосов
/ 16 февраля 2011

То, что вам нужно, это не регулярное выражение, это csv parser (openCSV) .

В качестве альтернативы вы могли бы сделать это вручную, используя что-то вроде

String[] arr = string.split("(\\\",\\\"|(?<!\\\"),)");
String output = "DATE RECEIVED: " + arr[0] + 
                "\nZIP: " + ...
                "...  " + ...;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...