title: oracle regular expression extracting string inside tags
body: <p>This is for my practice, I've a text like:</p>
  
  <pre><code> "lovely heart"&lt;abc.def@hotmail.com&gt;,
   "&lt;&lt;*&gt;&gt;Freeeky&lt;&lt;*&gt;&gt; Jack" &lt;aabbcc@gmail.com&gt;,
   "heavens's kingk*ng '-'asdf" &lt;bbb@yahoo.co.in&gt;
   "sample[^-^]"&lt;sample@ss.com&gt;
  </code></pre>
  
  <p>I need to extract only:</p>
  
  <pre><code>abc.def@hotmail.com
  aabbcc@gmail.com
  bbb@yahoo.co.in
  sample@ss.com
  </code></pre>
  
  <p>Here's my try, but still its half or less done. </p>
  
  <pre><code>WITH t AS
       (SELECT '"lovely heart"&lt;abc.def@hotmail.com&gt;,
  "&lt;&lt;*&gt;&gt;Freeeky&lt;&lt;*&gt;&gt; Jack" &lt;aabbcc@gmail.com&gt;, 
  "heavens''s kingk*ng ''-''asdf" &lt;bbb@yahoo.com&gt;' word
       FROM dual
       )
  SELECT regexp_substr(word, '&lt;(.*@.*)&gt;',1,LEVEL, NULL,1)
  FROM t
       CONNECT BY level &lt;= regexp_count(word, '&lt;(.*@.*)&gt;');
  </code></pre>
  
  <p>some results are like:</p>
  
  <pre><code>&lt;*&gt;&gt;Freeeky&lt;&lt;*&gt;&gt; Jack" &lt;aabbcc@gmail.com
  </code></pre>
  
  <p>Any good solution please.</p>
  
  <p>Thanks</p>