Как удалить строки, содержащие двойной адрес электронной почты в Notepad ++

262
DeathRival

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

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 
0

1 ответ на вопрос

2
Kyle Polansky

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

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

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

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

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

но что, если двойная электронная почта в той же строке раньше: пример user @ yahoo.comuser @ yahoo.com: пароль для удаления такого рода? DeathRival 6 лет назад 0

Похожие вопросы