title: How to capture multiple instances of the same group in Rust regex?
body: <p>Here is my text:</p>
  <pre><code>hello: 3 32 2 8
  </code></pre>
  <p>I want to capture it with the following regex:</p>
  <pre><code>^([a-z]+):( [0-9]+)+$
  </code></pre>
  <p>I'm doing this:</p>
  <pre><code>let txt = &quot;hello: 3 32 2 8&quot;;
  let re = Regex::new(&quot;^([a-z]+):( [0-9]+)+$&quot;)?;
  let caps = re.captures(txt);
  println!(&quot;{caps:?}&quot;);
  </code></pre>
  <p>I'm getting only the last number <code>8</code> in the second capture group:</p>
  <pre><code>Some(Captures({0: Some(&quot;hello: 3 32 2 8&quot;), 1: Some(&quot;hello&quot;), 2: Some(&quot; 8&quot;)}))
  </code></pre>
  <p>I suspect that it is an expected behavior of <code>captures</code>, but what is the workaround?</p>