In (Visual Basic, .NET):

```
  Dim result As Match = Regex.Match(aStr, aMatchStr)
  If result.Success Then
      Dim result0 As String = result.Groups(0).Value
      Dim result1 As String = result.Groups(1).Value
  End If

```

With: aStr equal to (whitespace is normal space and there are seven spaces between `n` and `(`):

```
"AMEVDIEERPK + 7 Oxidation &nbsp; &nbsp; &nbsp; (M)"

```

Why does `result1` become an empty string for aMatchStr equal to

```
"\s*(\d*).*?Oxidation\s+\(M\)"

```

but becomes "7" for `aMatchStr` equal to

```
"\s*(\d*)\s*Oxidation\s+\(M\)"

```

?

(`result0` becomes equal to "AMEVDIEERPK + 7 Oxidation       (M)")

(This is from [MSQuant](http://msquant.sourceforge.net/), [MascotResultParser.vb](http://pmortensen.eu/1/MSQuant/MSQsrcWWW,1.5,2008-12-19/MascotResultParser.vb.html), function `modificationParseMatch()`).