Из документации Java 6 Pattern:
Специальные конструкции (не захватывающие)
(?:
X)
X, как группа, не захватывающая захват...
(?>
X)
X, как независимая, не захватывающая группа
Между (?:X)
и (?>X)
в чем разница? Что означает независимый в этом контексте?