Я использую следующее Regex для проверки адреса электронной почты. Как разрешить акцентированные символы?Разрешить акцентированные символы для адреса электронной почты Regex
^([a-zA-Z0-9!#\$%*/?\|\^\{\}`~&'+\-=_])+(\.([a-zA-Z0-9!#\$%*/?\|\^\{\}`~&'+\-=_])+)*@((\[(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5]))\]))|((([a-zA-Z0-9])+(([\-])+([a-zA-Z0-9])+)*\.)+([a-zA-Z])+(([\-])+([a-zA-Z0-9])+)*))$
Вот адрес электронной почты проверяемого: äöüéè@paris.com
я в конечном итоге изменения регулярного выражения использовать \ W вместо A-Za-z0-9, который позволит международным символов через C#.
^([\w!#\$%*/?\|\^\{\}`~&'+\-=_])+(\.([\w!#\$%*/?\|\^\{\}`~&'+\-=_])+)*@((\[(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5]))\]))|((([\w])+(([\-])+([\w])+)*\.)+([a-zA-Z])+(([\-])+([\w])+)*))$
Просто добавьте их в классе символов. – Toto
«Поскольку регулярные выражения не полностью стандартизированы, все вопросы с этим тегом должны также содержать тег, определяющий применимый язык программирования или инструмент». [См. Здесь.] (Http://stackoverflow.com/tags/regex/info) – ClasG
Добавлен тег C#. Я использую регулярное выражение выше в течение многих лет. Я не могу вспомнить, где я его нашел. –