title: Return Value of full Regex match (multiple pattern)
body: <p>I´m currently working with logs and need to extract Pattern from it. 
  I found out that i can concat multiply pattern with the <code>|</code> operator.</p>
  
  <p>Quick example:
  Pattern 1 : Tree
  Pattern 2 : Show</p>
  
  <pre><code>String pattern = "Key\\s=\\s&lt;[a-zA-Z0-9]*&gt;|\\[something\\s\\]*";
  Pattern.compile(pattern) 
  </code></pre>
  
  <p>And I wanna only the result if the String matches the pattern.</p>
  
  <p>With </p>
  
  <pre><code>while (matcher.find()) {
              foundValue = matcher.group(0);
          }
  </code></pre>
  
  <p>What I´m getting in result is all groups. So Some single Tree ,some single Show and then some results where both exists.(Even some Blanks?!)</p>
  
  <p>output:</p>
  
  <pre><code>[something ]
  "heres a blank line why"
  key = dataIwantToo
  </code></pre>
  
  <p>How you see i get my pattern but they are split in multply lines.What I want is the result as a whole.
  Example:</p>
  
  <pre><code>[something ] key = dataIwantToo
  </code></pre>
  
  <p>Is there ans possibility? </p>