[]
denotes a character class. ()
denotes a capturing group.
[a-z0-9]
— One character that is in the range of a-z
OR 0-9
(a-z0-9)
— Explicit capture of a-z0-9
. No ranges.
a
— Can be captured by [a-z0-9]
.
a-z0-9
— Can be captured by (a-z0-9)
and then can be referenced in a replacement and/or later in the expression.