title: Split string in Oracle with regexp_substr in order
body: <p>I have a string in Oracle database, my string is: 'bbb;aaa;qqq;ccc'</p>
  
  <p>I used regexp for split my string:</p>
  
  <pre><code>select distinct trim(regexp_substr('bbb;aaa;qqq;ccc','[^;]+', 1,level) ) as q 
  from dual
  connect by regexp_substr('bbb;aaa;qqq;ccc', '[^;]+', 1, level) is not null ;
  </code></pre>
  
  <p>I want to split it in order, I expected the below output always:</p>
  
  <pre><code>bbb
  aaa
  qqq
  ccc
  </code></pre>
  
  <p>because order of the subString are very important for me. but the result of this query is not in order:</p>
  
  <pre><code>qqq
  aaa
  bbb
  ccc
  </code></pre>