Back references provide a convenient way of matching a repeated character or repeated tokens in the input text. By using back references, the regular expression engine can match the exact same text as previously matched by a capturing group.
The syntax of a back reference is a backslash followed by a capturing group number, as shown in the following example:
\3
The preceding example is a back reference of the third capturing group.
In Java regular expressions, there can be up to 99 back references, each number referencing a captured group number.
For example, if we need to match a two-digit number with the restriction that both digits must be the same, then we need to capture the first digit and then use a back reference for the first captured group, as follows:
^(\d)\1$
Now, this regex will match any of these strings: 11, 22, 55, and 88.
We can also...