регулярное выражение для проверки строки и возврата значения в JAVA - PullRequest
0 голосов
/ 15 апреля 2019

У меня есть строка

String str = "//contains(@class, 'abc')])[1]//*[@name='xyz']";

Я пробовал ниже, но не повезло

"\\)\\[\\d*\\]" 

Мне нужно проверить, содержит ли эта строка ") [число только столько раз, сколько 2, 22 и т. Д.]", Тогда только мне нужно вынести это число, заключенное в квадратные скобки, как в примере выше его: - 1

1 Ответ

0 голосов
/ 15 апреля 2019

Вы можете использовать это

\)\[(\d+)\]
  • \)\] - совпадения )[
  • (\d+) - захват группы соответствует цифрам один или несколько раз
  • \] - Матчи ]

Демо

Один альтернативный вариант использует lookaround

(?<=\)\[)(\d+)(?=\])

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