2013-09-20 3 views
0

У меня есть строка ввода («Мой электронный идентификатор - abc @ gmail.com»). Из входной строки мне нужно проверить идентификатор электронной почты с помощью Regex и заменить ее на (xxxxxxx).Проверка идентификатора электронной почты с использованием Regex в C#

Я использую шаблон ниже, но он не работает, если идентификатор электронной почты содержит пробел.

\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*

Спасибо.

ответ

0

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

// (?=\\s*\\w)[\\w\\s]+(?:[-+.'](?=\\s*\\w)[\\w\\s]+)*@(?=\\s*\\w)[\\w\\s]+(?:[-.](?=\\s*\\w)[\\w\\s]+)*\\.(?=\\s*\\w)[\\w\\s]+(?:[-.](?=\\s*\\w)[\\w\\s]+)* 

(?= \s* \w) 
[\w\s]+ 
(?: 
     [-+.'] 
     (?= \s* \w) 
     [\w\s]+ 
)* 
@ 
(?= \s* \w) 
[\w\s]+ 
(?: 
     [-.] 
     (?= \s* \w) 
     [\w\s]+ 
)* 
\. 
(?= \s* \w) 
[\w\s]+ 
(?: 
     [-.] 
     (?= \s* \w) 
     [\w\s]+ 
)* 
Смежные вопросы