привет, как мне удалить строки, содержащие менее 3 букв в электронном письме до @domain, поскольку @domains, содержащий уже более 3 букв или 3 буквы, я хочу пропустить и выполнить поиск до @domain

так что это s1111g @ domain. "any": строки пароля

так что поиск будет перед "@" доменом, таким как @gmail или @yahoo, или любым электронным письмом

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

$test1@gmail.com:Keepline1
Ga@gmail.com:Removeline0
S*556&e@yahoo.com:Removeline0
*test2@hotmail.com:Keepline1
3%6%768()-S@yahoo.fr:Removeline0
¿H£1§¥889@gmail.com:Removeline0
Normal1@web.net:Keepline1
§Studio7746@club.ru:Keepline1

нужен результат:

$test1@gmail.com:Keepline1
*test2@hotmail.com:Keepline1
Normal1@web.net:Keepline1
§Studio7746@club.ru:Keepline1

1 ответ1

1

Вот способ пойти:

  • Ctrl+H
  • Найдите что: ^(?:[^a-z@]*[a-z]){0,3}[^a-z@]*@.+(?:\R|$)
  • Заменить на: EMPTY
  • Заменить все

Объяснение:

^           : begining of line
(?:         : start non capture group
  [^a-z@]*  : 0 or more non alphabetic or @
  [a-z]     : an alphabetic
){0,3}      : group exists from 0 up to 3 times
[^a-z@]*    : 0 or more non alphabetic or @
@           : literally @
.+          : 1 or more any character but newline
(?:\R|$)    : any kind of linebreak (\r, \n, \r\n) or end of line

НЕ ПРОВЕРИТЬ . matches newline

Результат для данного примера:

$test1@gmail.com:Keepline1
*test2@hotmail.com:Keepline1
Normal1@web.net:Keepline1
§Studio7746@club.ru:Keepline1

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