Почему Split, если вы можете совместить?
Воскрешая этот вопрос, потому что по какой-то причине простое решение не было упомянуто. Вот наше красиво компактное регулярное выражение:
"[^"]*"|[^,]+
Это будет соответствовать всем желаемым фрагментам ( см. Демонстрацию ).
Пояснение
"[^"]*"
мы сопоставляем полный "double-quoted strings"
|
[^,]+
любые символы, которые не являются запятой. Возможная доработка заключается в том, чтобы улучшить строчную сторону чередования, чтобы позволить цитированным строкам включать экранированные кавычки.