Regex, чтобы найти пользователя UPN внутри строки - PullRequest
0 голосов
/ 18 декабря 2018

Я хочу найти имена Принципала пользователя во всех строках для инструмента C #, чтобы анонимизировать данные, специфичные для клиента.

Я нашел это:

(? [^ @] +) @ (? (?: [a-z0-9] +.) + [az] +)

Но в такой строке:

f-4af0-86e8-01439a0ae52a \ ",, \" Active \ ", \" 30.10.2008 9:05:35 AM \ ", \" SingleSession \ ", \" Desktop \ ",, \" 10 /29/2018 14:35:06 \ ",, \" 655952 \ ", \" DOM ​​\ na010318 \ ", \" na010318 \ ", \" DOM ​​\ n010318 \ ", \" S-1-5-21-2052699199-3915784498-1582209984-1157056 \», \ "user.a@domain.acc.local \", \ "Primary \", \ "c46b084c-6df3-47dd-9d3e-8e17f855c7fe \""

Он соответствует всей части перед UPN (первый пробел, потому что он соответствует слову, которое я предполагаю.

Как мне переписать регулярное выражение, чтобы найти толькоадрес электронной почты / UPN в этой строке?

Спасибо

1 Ответ

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

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

regex извлекать электронную почту из строк

Следующеерегулярное выражение работает для вашего примера:

([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9_-]+)

https://regex101.com/r/ijG8Xr/2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...