dividir uma cadeia separada por vírgula com cadeias entre aspas e não entre aspas [duplicado]

Esta pergunta já tem uma resposta aqui:

Como dividir csv cujas colunas podem conter, 8 respostas

Eu tenho a seguinte seqüência separada por vírgula que eu preciso dividir. O problema é que parte do conteúdo está entre aspas e contém vírgulas que não devem ser usadas na divisão ...

Corda:

111,222,"33,44,55",666,"77,88","99"

Eu quero a saída:

111  
222  
33,44,55  
666  
77,88  
99  

Eu tentei isso:

(?:,?)((?<=")[^"]+(?=")|[^",]+)   

Mas lê a vírgula entre "77,88", "99" como um hit e recebo a seguinte saída:

111  
222  
33,44,55  
666  
77,88  
,  
99  

Alguém pode me ajudar? Estou ficando sem horas ... :) / Peter

questionAnswers(16)

yourAnswerToTheQuestion