CI mismatches coverage regex

CI coverage regex doesn't seem to be picking up the correct number. Output:

TOTAL                                                 595     91    85%

regex:

TOTAL.*(\d+)\%$

This results in coverage: "595". Clearly in the example above, the matched group should be the "85" (I even tested this with external regex testers).

Longer patterns,more verbose patterns also mismatch:

TOTAL\s+\d+\s+\d+\s+(\d+)%$

It would seem that the first group of digits from the regex is picked up, instead of the first matching group (while the examples seem to indicate that match groups are not ignored).