Полный пример файла, содержащий:

clean000@yahoo.com:password0
example1@yahoo.com:example1@yahoo.com
example1@yahoo.com:user1@hotmail.com
clean111@yahoo.com:password1
example2@live.fr:user2@email.ru
example3@hotmail.com.uk:user3@gmail.com
clean222@hotmail.com:password1
example5@live.fr:user5@email.ru
example4@yahoo.com:user4@hotmail.com
clean333@gmail.com:password1
example10@live.fr:user10@email.ru
clean444@email.net:password1
example9@yahoo.com:user9@hotmail.com
example6@live.fr:user6@email.ru

Необходимый результат:

clean000@yahoo.com:password0


clean111@yahoo.com:password1


clean222@hotmail.com:password1


clean333@gmail.com:password1

clean444@email.net:password1

1 ответ1

2

Я думаю, что самый простой способ сделать это - заменить регулярное выражение.

  • Нажмите CTRL+H, чтобы открыть окно замены.
  • В поле «Найти что:» введите регулярное выражение, соответствующее двойным адресам электронной почты. Я использовал выражение .*@.*@.*
  • Оставьте поле "Заменить на" пустым, чтобы убрать эти строки.
  • В поле "Режим поиска" выберите кнопку "Регулярное выражение". Убедитесь, что ". Соответствует новой строке" не отмечено.

Обратите внимание, есть гораздо лучшие регулярные выражения адресов электронной почты. Тот, который я предоставил, просто ищет два символа @ в одной строке с 0 или более символами до, между и после этих символов @.

ОБНОВЛЕНИЕ: В ответ на комментарий о сопоставлении двух адресов электронной почты рядом друг с другом это сделать гораздо сложнее, поскольку не существует простого способа определить, где заканчивается первое письмо и начинается второе. Для точного случая, указанного в комментарии, вы можете использовать "Найти что" (.*?\@.*?\.com)(.*@.*:.*) со значением поля "Заменить на" \2 . (Опять же, есть гораздо лучшие выражения, которые вы можете использовать, но это быстро и грязно).

Это регулярное выражение находит адрес электронной почты, заканчивающийся на .com в первом совпадении с RegEx, а другой адрес электронной почты, двоеточие и дополнительный текст - это второе совпадение. "Заменить на" оставит 2-й матч (тот, который вы ищете).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .