A bit less more complex, but more precise; matches up to “r42”
rough translation: "match an ‘r’, followed by either the a digit
followed by a non-digit; or a number 1-3 followed by one digit
and a non-digit; or the number 4 followed by a 0, 1, or 2.
register_regex = /r(?:\d\D|[1-3]\d\D|4[012]\D)/
That doesn’t work if the register is at the EOF (is that important?).
/\br([1-3]+\d|4[012])\b)/
\b == word boundary
( == begin brackets for the boolean expression
[123]+\d == any digit, optionally preceded by 1,2 or 3 (ie 0
thru 39)
== or
4[012] == 4 followed by 0,1 or 2 (40 thru 42)
) == end boolean expression
\b == word boundary
···
#####################################################################################
This email has been scanned by MailMarshal, an email content filter.
#####################################################################################