Поиск IP-адресов с помощью Notepad++ Regex со специальным символом

Поиск IP-адресов с помощью Notepad++ Regex со специальным символом

Я пытаюсь создать макрос в Notepad++ для поиска IP-адресов, которые включают %символ.

Итак, я пытаюсь найти IP-адреса, соответствующие следующим критериям:

10.x.x.x%2

Вот и все, я перепробовал много разных вариантов регулярных выражений и могу без проблем находить IP-адреса, но не могу добавить данные %2к поиску; все способы, которые я пробовал, даже с кодами ASCII, терпят неудачу.

Мне нужно перебрать все 10.x.x.x%2и изменить их на %1. Проблема в том, что у меня есть куча 10.x.x.x%1' в одном файле, и мне нужно, чтобы они остались.

Кстати, это конфигурация с устройства F5, а символ %— это то, как мы различаем различные домены маршрутов.

решение1

  • Ctrl+H
  • Найти то, что:(10(?:\.\d{1,3}){3})%2
  • Заменить:$1%1
  • Replace all

Объяснение:

(               : start group 1
  10            : literally 10
  (?:           : start non capture group
    \.\d{1,3}   : a dot followed by 1 to 3 digits
  ){3}          : group must appear 3 times
)               : end group 1
%2              : literally %2
  • Проверьте регулярное выражение
  • НЕ ПРОВЕРЯТЬ. matches newline

Замена:

$1      : content of group 1
%1      : literally %1

Я предполагал, что в каждой строке есть только IP-адреса. Если вы хотите сопоставить конкретные IP-адреса, замените (?:\.\d{1,3}){3})на (?:\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}):

  • Найти то, что:(10(?:\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3})%2
  • Заменить:$1%1

Связанный контент