title: String delimiter using Java Pattern
body: <p>I have this string which id like to delimit using Java Pattern. There is also a carriage return character after the first line. The delimiter character is |</p>
  
  <pre><code>MSH|^~\&amp;|Unicare^HL7CISINV10.00.16^L||IBA||||ADT^A03|3203343722|P|2.3.1|||||
  EVN|A03
  </code></pre>
  
  <p>I used the following code.</p>
  
  <pre><code>Pattern pattern = Pattern.compile("([^|]++)*");
  Matcher matcher = pattern.matcher(str);
  while (matcher.find()) {
     System.out.println("Result: \"" + matcher.group() + "\"");
  }
  </code></pre>
  
  <p>Doing this basically shows empty characters for each of the delimiter character. I would like find to ignore these. Any chance of modifying the regex so the characters can be ignored.</p>
  
  <p>Thanks in advance.</p>