учись пользоваться гуглей. вот что нарылось
Обратные ссылки
Рассмотрим задачу поиска слов, содержащих три одинаковые гласных буквы подряд. Наивное решение [аеёиоуэюя]{3}, использующее квантификаторы, не будет работать, поскольку такому шаблону соответствуют строки с тремя подряд идущими гласными, но необязательно одинаковыми. Чудовищное решение с полным перечислением альтернатив, ааа|еее|ёёё|иии|ооо|ууу|эээ|ююю|яяя, мы с негодованием отвергаем: ведь стоит взять другой, более обширный символьный класс, или заменить тройку в квантификаторе на большее значение, как размер шаблона катастрофически вырастет.
Тем не менее возможно элегантное решение, использующее группы захвата. Захватим гласную в группу, а затем сошлёмся на содержимое буфера захвата. Ссылки на первый, второй, третий буферы записываются в регулярном выражении как \g1, \g2, \g3. Итак, решением будет шаблон ([аеёиоуэюя])\g1{2}. Обратите внимание, что ссылка на буфер захвата должна следовать в регулярном выражении строго после соответствующей группы.
Обратные ссылки могут ссылаться не только на нумерованные буферы, но и на именованные. Такие ссылки имеют вид \k<name>, где, опять же таки, вместо name стоит конкретное имя. Наш пример можно переписать, применяя именованные группы: (?<vowel>[аеёиоуэюя])\k<vowel>{2} (vowel — гласная).