![]() |
|
||||||||||
|
|||||
|
Регистрация: Jun 2012
Адрес: Татарстан
Сообщений: 118
|
Добрый день, у меня есть строка регуляки которая якобы проверяет на соответствие емаил адрес.
/^(\w|[\.-])+@((\w|-)+\.)+\w{2,4}+$""^(\w|[\.-])+@((\w|-)+\.)+\w{2,4}+$/ помогите мне пожалуйста разобрать и понять что в этой строке проверяется |
|
|||||
|
/ в начале и вконце / - это просто границы регулярки
дальше так: ^ начало строки дальше в скобках класс \w соответствие любой букве латинского алфавита [\.-] что-то, либо точка, либо дефиз + после класса значит "хотя бы один" Сооответственно ^(\w|[\.-])+ значит что после начала строки может быть хотя бы одна буква, вместо которой или после которой так же может быть точка или дефиз (может и не в единственном экземпляре) после которой идет символ собачки @ после нее опять хотя бы одна буква или дефиз, за которой обязательно точка. \w{2,4}+$ это значит что должно быть от 2 до 4 букв обязательно (+), и после этого конец строки $ Правда не понятно зачем конструкция задвоена. п.с. Это не очень надежная регулярка. Такие домены как com.sg, или com.ua уже отсекутся |
|
|||||
|
Регистрация: Jun 2012
Адрес: Татарстан
Сообщений: 118
|
эта регулярка даже @yandex.ru отсекает
|
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Копипасту, видимо, убрать надо.
Точку внутри символьного класса экранировать не надо. И условие лишнее. Группу сбора лучше исключить. /^[\w.-]+@(?:[\w-]+\.)+\w{2,4}+$/ |
![]() |
![]() |
Часовой пояс GMT +4, время: 07:24. |
|
|
« Предыдущая тема | Следующая тема » |
|
|