Eclipse говорит, что в этом регулярном выражении есть незаконное повторение - PullRequest
5 голосов
/ 02 марта 2012
if(possTape.matches("{\\(\\d+,\"[^:=;@\"\\)\\(\\{\\}\\[\\]]+\"\\)(,\\(\\d+,\"[^:=;@\"\\)\\(\\{\\}\\[\\]]+\"\\))+}"))

Но что это значит?Я протестировал это регулярное выражение на регулярном выражении (с изменениями, сделанными так, чтобы оно работало как Java), но я не вижу, где есть недопустимое повторение?

1 Ответ

8 голосов
/ 02 марта 2012

экранировать фигурные скобки?

Согласно этот ответ :

{и} являются особенными в диалекте регулярных выражений Java (и в большинстве других диалектов в этом отношении): они являются открывающим и закрывающим токенами для квантификатора повторения {n, m}, где n и m являются целыми числами. Отсюда и сообщение об ошибке: «Недопустимое повторение».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...