Найти автономный процент (%) из строки ввода - PullRequest
1 голос
/ 22 апреля 2020

Я пытаюсь найти все отдельные "%" в одной строке.

Пример:

"Some Text% %%" // 1 совпадение

"Еще немного текста %%%%%" // 2 совпадения

"Еще больше текста о %%%% %%" // 2 совпадения

"Еще больше текста о% %% %% "// 1 совпадение

после многих чтений на регулярном выражении и попыток мне удалось получить противоположное тому, что мне нужно -> Regex101 fiddle .

Четный %{1} не добился цели. Он просто находит все проценты.

Как мне достичь желаемой цели с помощью регулярных выражений? Благодаря.

1 Ответ

2 голосов
/ 22 апреля 2020

Преобразование моего комментария в ответ так, чтобы решение было легко найти для будущих посетителей.

Для соответствия автономным %, вы можете использовать отрицательное условие просмотра сзади и отрицательное условие просмотра:

(?<!%)%(?!%)

Обновленная демоверсия RegEx

Объяснение:

  • (?<!%): отрицательное условие просмотра за утверждением, которого у нас нет % на предыдущей позиции
  • %: соответствует a %
  • (?!%): отрицательное прогнозное условие, чтобы утверждать, что у нас нет % на следующей позиции
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...