title: Select words between commas (excluding double quotations) using regexp_substr
body: <p>I'm attempting to return a list of strings from a comma delimited list. However, I still want to return commas in strings where they appear between double quotation marks. </p>
  
  <p>This is my current statement:</p>
  
  <pre><code>SELECT 
    regexp_substr('one,two,"three, four five",six,"seven, eight, nine"', 
                  '(.*?,){'||(n-1)||'}([^,]*)', 1, 1, '', 2) token
  FROM (SELECT LEVEL n FROM dual CONNECT BY LEVEL &lt;= 10);
  </code></pre>
  
  <p>This returns:</p>
  
  <pre><code>one
  two
  "three
  four five"
  six
  "seven
  eight
  nine"
  </code></pre>
  
  <p>However I need to return:</p>
  
  <pre><code>one
  two
  three, four, five
  six
  seven, eight, nine
  </code></pre>
  
  <p>My regex is rusty. Is there a clean way to modify my regex to achieve this?</p>
  
  <p>Thanks!</p>