title: lookahead and group
body: <p>In Java, on a text like <code>foo &lt;on&gt; bar &lt;/on&gt; thing &lt;on&gt; again&lt;/on&gt; now</code>, I should want a regex with groups wich give me with a find "foo", "bar", empty string, then "thing", "again", "now".</p>
  
  <p>If I do <code>(.*?)&lt;on&gt;(.*?)&lt;/on&gt;(?!&lt;on&gt;)</code>, I get only two group (<em>foo bar, thing again</em>, and I've not the end "now").</p>
  
  <p>if I do <code>(.*?)&lt;on&gt;(.*?)&lt;/on&gt;((?!&lt;on&gt;))</code> I get <em>foo bar empty string</em>, then <em>thing again and empty string</em> (here I should want "now").</p>
  
  <p>Please what is the magical formula ?</p>
  
  <p>Thanks.</p>