2016-06-12 3 views
2

Учитывая строку 12312112211212123 Я не могу понять, почему следующее регулярное выражение: (1.+)\1 матчиПочему эти регулярные выражения не совпадают?

Но это один не делает: ((1.+)\1)

Что такое объяснение для этого?

+0

для лучшей визуализации посетите https://regex101.com/ – rock321987

ответ

4

Второе регулярное выражение не совпадает, поскольку внешняя группа рассматривается как группа 1, а внутренняя группа - как группа 2. Чтобы совместить это, вам нужно будет использовать ((1.+)\2).

+0

Хорошо, я понял. Благодаря! –

+1

Это, или '(? :(1. +) \ 1)' – Tomalak

2

\1 относится к первому набору круглых скобок в выражении.

Подумайте об этом.

Смежные вопросы