On the problem of regular extraction of numbers or letters from a string by ruby with an unfixed number of digits

I have a bunch of strings, the rule is "number + letter + number + letter + number". Numbers and letters can be any one or more, such as 1A03F4F, 16DC203B5R. I want to regularly extract the first paragraph of numbers, the first paragraph of letters, the second paragraph of numbers, the second paragraph of letters and so on. Could you tell me how to write them?

Jun.01,2021

String-sharpscan

2.5.1 :017 > '16DC203B5R'.scan(/(\d+)*([a-zA-Z]+)*/)
 => [["16", "DC"], ["203", "B"], ["5", "R"], [nil, nil]]
2.5.1 :010 > '01AB03F4F'.scan(/(\d+)*([a-zA-Z]+)*/)
 => [["01", "AB"], ["03", "F"], ["4", "F"], [nil, nil]]
Menu