Справка Regex для деталей учетной записи - PullRequest
0 голосов
/ 03 декабря 2018

У меня есть текстовый файл в следующем формате

======= Account Info =======
email.example@gmail.com:examplepass
Subscription:sub Type
Expiration date:12/21/18
Country:US
Renew Charge:$14.99 + tax
DOB:8/18/73
Created By Athena
============================

======= Account Info =======
email.emaple2@yahoo.com:passExample00
Subscription:sub Type
Expiration date:12/5/18
Country:US
Renew Charge:$14.99 + tax
DOB:8/5/74
Created By Athena
============================

Как я могу использовать регулярные выражения, чтобы просто получать электронную почту: передать в этом формате

email.example@gmail.com:examplepass
email.emaple2@yahoo.com:passExample00

Ответы [ 3 ]

0 голосов
/ 03 декабря 2018

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

1) Выберите все между строкой «Информация об учетной записи» и строкой «Подписка».Вам необходимо установить флажок «. Соответствия новой строки», чтобы это работало.

(?<=Account Info =======\r\n)(.+?)(?=\r\nSubscription)

Это дает позитивный взгляд на «Сведения об учетной записи =======» и позитивный прогноз на «Подписку»и вслепую выбирает все (кроме символов новой строки) между ними.

[Примечание: Notepad ++ явно не допускает просмотр назад переменной длины, поэтому вам необходимо указать полную строку для информации об учетной записи.Если вы работаете в Unix-системах, вам, возможно, придется избавиться от "\ r" s *

. Минусы: может произойти сбой, если между двумя строками, которые он просматривает, есть что-то кроме адреса электронной почты и пароля.for.

2) Выберите все в строке с @ и :

^.+?@.+?:.+

Минусы: может произойти сбой, если у вас есть другая строка, в которой есть как @, так и:

0 голосов
/ 04 декабря 2018
  • Ctrl + F
  • Найти что: \S+@\S+
  • проверить Обтекание
  • check Регулярное выражение
  • Поиск в документе

Объяснение:

\S+     # 1 or more any character that is not a space
@       # literally @
\S+     # 1 or more any character that is not a space

enter image description here

0 голосов
/ 03 декабря 2018

Была ли у вас попытка сделать это?

Вы можете попробовать:

^email:\w+$

более полное регулярное выражение в соответствии с вашими правками будет

(^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}):\w+

...