Within a regex, parentheses make a capture. Captures are numbered 1, 2, ..., in the same order as they occur within the regex, and, within the regex, \1, \2, etc. correspond to the capture groups captured first, second, etc. (Outside the regex, the captures are named $1, $2, etc.)
The regex /y(.)(.)\2\1/ matches any 5-character sequence having the following form: a literal “y”, followed by any two non-newline characters, followed by the same character as was matched in the second capture group, followed by the same character as was matched in the first capture group.
So, “abba” does not match, because it doesn’t contain a literal “y”. But “yabba” matches, as do “yukku”, “ywzzw”, “y1@@1”, etc.
See the section “Capture groups” in perlre#Regular-Expressions.
Hope that helps,
| Athanasius <°(((>< contra mundum | Iustus alius egestas vitae, eros Piratica, |
In reply to Re: Capture group in Regex.
by Athanasius
in thread Capture group in Regex.
by tty1x
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |