2014-02-12 4 views
0

может кто-то, пожалуйста, помогите мне с выражением регулярного выражения, чтобы добиться следующего;Регулярное выражение для извлечения содержимого строки csv

[Пример CSV строка]

AAAAA,"BB B",CCCC,,"DDDD,DD DD",EEEEE 

Ожидаемые матчи;

AAAAA 
BB B 
CCCC 
<empty value> 
DDDD,DD DD 
EEEEE 
+0

Обратите внимание, если это поможет: http://stackoverflow.com/questions/21707758/splitting-complex-string-using-regular-expression/21708432#21708432 –

+1

Это не работа для regexp. Почти каждый современный язык имеет модуль CSV, который будет разбирать его правильно. Мы даже можем предложить некоторые, если вы помечаете язык, который используете. См. «Проблема XY»: «Может ли кто-нибудь помочь мне, как нарезать лук с помощью совок для мороженого?» – Amadan

ответ

1

Ты лучше от не создавать свой собственный CSV-анализатор, а использовать один уже сделанную, например, как это:

https://code.google.com/p/csharp-csv-reader/

Любая причина, почему вы не хотели бы, чтобы это сделать? Если есть допустимый, я могу создать некоторое регулярное выражение, но это не рекомендуется, так как формат входных данных может немного измениться, и совпадение не произойдет.

+0

Я предположил, что проблема с большинством библиотек будет интерпретировать некоторые значения, заключенные в кавычки, в то время как другие не были. Я попробую тот, который вы предложили, и сообщите, как это происходит. –

+1

Просто обновление, чтобы все знали, что пакет обрабатывается с непротиворечивыми котировками вокруг полей. –

+0

Большое спасибо за обновление –

Смежные вопросы