![]() |
регулярные выражения
Добрый день, у меня есть строка регуляки которая якобы проверяет на соответствие емаил адрес.
/^(\w|[\.-])+@((\w|-)+\.)+\w{2,4}+$""^(\w|[\.-])+@((\w|-)+\.)+\w{2,4}+$/ помогите мне пожалуйста разобрать и понять что в этой строке проверяется |
/ в начале и вконце / - это просто границы регулярки
дальше так: ^ начало строки дальше в скобках класс \w соответствие любой букве латинского алфавита [\.-] что-то, либо точка, либо дефиз + после класса значит "хотя бы один" Сооответственно ^(\w|[\.-])+ значит что после начала строки может быть хотя бы одна буква, вместо которой или после которой так же может быть точка или дефиз (может и не в единственном экземпляре) после которой идет символ собачки @ после нее опять хотя бы одна буква или дефиз, за которой обязательно точка. \w{2,4}+$ это значит что должно быть от 2 до 4 букв обязательно (+), и после этого конец строки $ Правда не понятно зачем конструкция задвоена. п.с. Это не очень надежная регулярка. Такие домены как com.sg, или com.ua уже отсекутся |
эта регулярка даже @yandex.ru отсекает
|
Копипасту, видимо, убрать надо.
Точку внутри символьного класса экранировать не надо. И условие лишнее. Группу сбора лучше исключить. /^[\w.-]+@(?:[\w-]+\.)+\w{2,4}+$/ |
| Часовой пояс GMT +4, время: 06:54. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.