@SocialCensus, el ejemplo que dio en el comentario a MarkusQ, donde se lanza en ' junto con el ", no funciona con el ejemplo MarkusQ dado arriba que si cambiamos sam a sam: (prueba, una" coma ", bob,", sam's, ", aquí) no tiene rival contra (,) (? = (?: [^ "'] | [" |'] [^ "'] ") $). De hecho, el problema tself, "Realmente no me importan las comillas simples versus las dobles", es ambiguo. Tiene que tener claro lo que quiere decir con una cita con "o con". Por ejemplo, ¿está permitido anidar o no? De ser así, ¿a cuántos niveles? Si solo 1 nivel anidado, ¿qué sucede con una coma fuera de la cita anidada interna? pero dentro de la cita externa de anidación también debería considerar que las comillas simples ocurren por sí mismas como apóstrofes (es decir, como el contraejemplo que di antes con sam).Finalmente, la expresión regular que usted creó realmente no trata las comillas simples a la par con comillas dobles ya que asume que el último tipo de comillas es necesariamente una comilla doble, y reemplazar la última comilla doble con ['| "] también tiene un problema si el texto no viene con las citas correctas (o si se usan apóstrofes), supongo que probablemente podríamos suponer que todas las comillas están delineadas correctamente.
La respuesta regular de MarkusQ responde a la pregunta: encuentre todas las comas que tengan un número par de comillas dobles después de esto (es decir, están fuera de comillas dobles) y descartar todas las comas que tienen un número impar de comillas dobles después (es decir, están entre comillas dobles). Esta es generalmente la misma solución que probablemente desee, pero vamos a observe algunas anomalías. Primero, si alguien deja una comilla al final, esta expresión busca todas las comas incorrectas en lugar de encontrar las deseadas o no hacer coincidir ninguno. Por supuesto, si falta una comilla doble, todas las apuestas están desactivadas ya que puede no estar claro si la que falta pertenece al final o en su lugar pertenece al principio; sin embargo, hay un caso que es legítimo y donde la expresión regular podría fallar (esta es la segunda "anomalía"). Si ajusta la expresión regular para recorrer las líneas de texto, debe tener en cuenta que al citar varios párrafos consecutivos es necesario que coloque una comilla doble al principio de cada párrafo y omita la cita al final de cada párrafo, excepto en el fin del último párrafo. Esto significa que en el espacio de esos párrafos, la expresión regular fallará en algunos lugares y tendrá éxito en otros.
Ejemplos y breves discusiones de citas de párrafos y de citas anidadas se pueden encontrar aquí http://en.wikipedia.org/wiki/Quotation_mark.
Respuesta final oficial, dada por MarkusQ: (,) (? = (?: [^ "'] | [" |'] [^ "'] *") * $) – SocialCensus
Como nota, esto no funciona a través de saltos de línea de cita intermedia. – SocialCensus
@SocialCensus vea mi nota adjunta a la respuesta. – MarkusQ