What do comma separated numbers in curly braces at the end of a regex mean?
They are 'quantifiers' - it means 'match previous pattern between 3 and 19 times'
When you are learning regular expressions, it's really use to play with them in an interactive tool which can highlight the matches. I've always liked a tool called Regex Coach, but it is Windows only. Plenty of online tools though - have a play with your regex here, for example.
That is the custom repetition operation known as the Quantifier.
\d{3}
will find exactly three digits.
[a-c]{1,3}
will find any occurrance of a, b, or c at least one time, but up to three times.
\w{0,1}
means a word character will be optionally found. This is the same as placing a Question Mark, e.g.: \w?
(\d\w){1,}
will find any combination of a Digit followed by a Word Character at least One time, but up to infinite times. So it would match 1k1k2k4k1k5j2j9k4h1k5k
This is the same as a Plus symbol, e.g.: (\d\w)+
b{0,}\d
will optionally find the letter b
followed by a digit, but could also match infinite letter b
's followed by a digit. So it will match 5
, b5
, or even bbbbbbb5
. This is the same as an Asterisk. e.g.: b*\d
Quantifiers