title: How does Regex.Split work when working with groups?
body: <p>I am trying to split the following ID string based on the groups within a regular expression:</p>
  
  <pre><code>string id = "aBcDe-fghIj-KLmno-pQRsT-uVWxy";
  string regex = "^([a-z]{5}-){4}([a-z]{5})$";
  
  Regex idRegex = new Regex(regex, RegexOptions.IgnoreCase);
  var match = idRegex.Match(id);
  var split = idRegex.Split(id);
  </code></pre>
  
  <p>The resulting groups within the <code>split</code> string array are:</p>
  
  <pre><code>pQRsT-
  uVWxy
  </code></pre>
  
  <p>It seems that only the last instance found matching the first group in the regex will remain in the string array.</p>
  
  <p>Is it possible to return all instances of this group using Regex.Split?</p>
  
  <p>So that the array of strings contains:</p>
  
  <pre><code>aBcDe-
  fghIj- 
  KLmno- 
  pQRsT- 
  uVWxy
  </code></pre>