Функция проверки валидности e-mail с использованием регулярных выражений RegExp (7.7)

Публикация № 96625

Разработка - Практика программирования

15
Функция проверки валидности e-mail с использованием регулярных выражений RegExp (7.7). Данную функцию можно вставить в Глобальный модуль и пользоваться, например, при вводе или сохранении e-mail.

Функция проверки валидности e-mail с использованием регулярных выражений RegExp (7.7). Данную функцию можно вставить в Глобальный модуль и пользоваться, например, при вводе или сохранении e-mail.

Исходный код функции:

//***********************************************************************
// глПроверкаEmail()
//
// Функция проверки валидности e-mail с использованием регулярных выражений RegExp.
//
// Параметры:
//      _Email - Строка с проверяемым e-mail;
//
// Возвращаемые значения:
//      0 - Некорректный e-mail;
//      1 - Корректный e-mail.
//
Функция глПроверкаEmail(_Email) Экспорт

    Если Найти(
_Email, " ") > 0 Тогда // Не должно быть пробелов.
       
Возврат 0;
    КонецЕсли;

   
Истина = -1;
   
Ложь   = 0;

   
ШаблонEmail = "([a-z0-9_\-]+\.)*[a-z0-9_\-]+@([a-z0-9][a-z0-9\-]*[a-z0-9]\.)+[a-z]{2,4}"; // регулярное выражение соответствует произвольному e-mail адресу

   
Попытка
       
RegExp = СоздатьОбъект("VBScript.RegExp"); // создаем объект для работы с регулярными выражениями.
   
Исключение
        Сообщить(
"Не удалось инициализировать VBScript.RegExp! Невозможно выполнить проверку e-mail!", "!");
        Возврат
1;
    КонецПопытки;
   
RegExp.MultiLine  = Ложь;        // истина — текст многострочный, ложь — одна строка.
   
RegExp.Global     = Истина;      // истина — поиск по всей строке, ложь — до первого совпадения.
   
RegExp.IgnoreCase = Истина;      // истина — игнорировать регистр строки при поиске.
   
RegExp.Pattern    = ШаблонEmail; // шаблон (регулярное выражение) для проверки корректности e-mail.

   
Если RegExp.Test(_Email) = Истина Тогда
        Возврат
1;
    Иначе
        Возврат
0;
    КонецЕсли;

КонецФункции
//глПроверкаEmail(_Email)

15

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. zk96 30.10.11 19:46 Сейчас в теме
Хороший пример использования регулярных выражений.
3. TrinitronOTV 31.10.11 08:39 Сейчас в теме
4. kittystark 15 03.11.11 11:01 Сейчас в теме
может чё не так осмыслил, но вроде по этому регэкспу проверку не пройдут
i.o.fam@domain.com
mail@other_domain.com
6. zaursoft 19 03.11.11 13:03 Сейчас в теме
(4) kittystark,
i.o.fam@domain.com - контроль проходит
mail@other_domain.com - контроль не проходит. Поправлю.
mail@other.domain.com - контроль проходит.
5. kittystark 15 03.11.11 12:56 Сейчас в теме
хотя нет, i.o.fam@domain.com должен прокатить
7. zk96 07.11.11 15:21 Сейчас в теме
Кстати, вот на этот адрес тоже проверку не пройдет : mail@i.ua
Может вот так нужно?
ШаблонEmail = "([a-z0-9_\-]+\.)*[a-z0-9_\-]+@([a-z0-9_\-]{1,}\.)+[a-z]{2,4}";
Даже лучше вот так:
ШаблонEmail = "[A-Za-z0-9]{1}[-_.A-Za-z0-9]*@[A-Za-z0-9]{1}[-._a-z0-9]*[a-z]{2,4}";
8. zk96 07.11.11 18:44 Сейчас в теме
Или даже вот так
ШаблонEmail = "^[-a-z0-9!#$%&'*+/=?^_`{|}~]+(?:\.[-a-z0-9!#$%&'*+/=?^_`{|}~]+)*@(?:[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])?\.)*(?:aero|arpa|asia|biz|cat|com|coop|edu|gov|info|int|jobs|mil|mobi|museum|name|net|org|pro|tel|travel|[a-z][a-z])$";
:-)
9. pumbaE 629 09.11.11 17:06 Сейчас в теме
шаблонов в нете для проверки e-mail полно, в чем новизна?
Regexp откройте для себя. Там можно найти множество примеров.
10. alexm73 16.11.11 19:34 Сейчас в теме
М-да... как-то не понял, если честно...
а ЗАЧЕМ?... Именно, как пример внешней компоненты? Так с таким же успехом, можно использовать специальную dll-ку, по проверке... не понял, сорри...
Оставьте свое сообщение

См. также

Новый раздел на Инфостарте - Electronic Software Distribution Промо

Инфостарт напоминает: на нашем сайте можно купить не только ПО, связанное с 1С. В нашем арсенале – ESD-лицензии на ПО от ведущих вендоров: Microsoft, Kaspersky, ESET, Dr.Web, Аскон и другие.

  • Низкие цены, без скрытых платежей и наценок
  • Оперативная отгрузка
  • Возможность оплаты с личного счета (кешбек, обмен стартмани на рубли и т.п.)
  • Покупки идут в накопления для получения скидочных карт лояльности Silver (5%) и Gold (10%)

.Net в 1С. На примере использования HTTPClient, AngleSharp. Удобный парсинг сайтов с помощью библиотеки AngleSharp, в том числе с авторизацией аля JQuery с использованием CSS селекторов. Динамическая компиляция 111

Статья Программист Нет файла v7.7 v8 Windows Бесплатно (free) Практика программирования WEB

Часто приходится парсить сайты, в том числе с авторизацией, перескакивая со страницы на страницу по ссылкам. Тот, кто занимался вэб программированием, знает, как удобно использовать JQuery и CSS селекторы. На .Net написана очень удобная библиотека AngleSharp. Я покажу, как с её помощью можно значительно облегчить себе труд.

10.03.2016    49861    Serginio    33       

.Net в 1С. Асинхронные HTTP запросы, отправка Post нескольких файлов multipart/form-data, сжатие трафика с использованием gzip, deflate, удобный парсинг сайтов и т.д. 37

Статья Программист Нет файла v7.7 v8 Windows Бесплатно (free) Практика программирования Разработка внешних компонент WEB

Очень часто нужно при работе с HTTP сервисами или сайтами использовать Асинхронные HTTP запросы, отправку на сервер нескольких файлов, использование сжатия трафика. Эта статья про то, как этого легко добиться.

09.03.2016    26796    Serginio    22       

Перенос данных БП 2.0 => УТ 11 / КА 2 / ERP 2 (перенос остатков, документов и справочников из "1С:Бухгалтерия предприятия 8", ред. 2.0 в "1С:Управление торговлей 8", ред.11 / КА 2 / ERP 2). Обновлено до УТ 11.4.10.х, КА 2.4.10.х, ERP 2.4.10.х! Промо

Перенос позволяет загрузить в УТ 11 / КА 2 / ERP 2 документы за выбранный период, справочную информацию и остатки по счетам бух. учета. Переносятся остатки денежных средств, взаиморасчетов, остатки товаров и материалов на складах. Переносятся девятнадцать основных видов документов за выбранный период и вся нормативно-справочная информация. Есть фильтр по организации. Если нужно переносить что-то дополнительно, то обычно бесплатно дорабатываю правила (перед покупкой согласуйте необходимые доработки).

29700 руб.

Использование классов .Net в 1С для новичков 148

Статья Программист Нет файла v7.7 v8 Windows Бесплатно (free) Практика программирования Разработка внешних компонент Универсальные функции

Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)

27.01.2016    64744    Serginio    104       

Хитрости сохранения табличного документа в Excel для дальнейшей работы с ним 78

Статья Программист Нет файла v7.7 v8 1cv8.cf 1cv7.md Windows Бесплатно (free) Практика программирования Загрузка и выгрузка в Excel

Все пользователи 1С всех версий (начиная с 7-й) сталкиваются с проблемой нормальной работы с данными, сохраненными в Excel файл. Есть некоторые хитрости, которые позволяют облегчить работу с сохраненными данными из 1С в формат Excel.

16.01.2015    73681    shmellevich    35       

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

Онлайн-интенсив "Бизнес-процессы для подготовки к экзамену 1С:Специалист по платформе" 12 декабря 2019 г. Промо

На интенсиве будут рассмотрены все теоретические вопросы, связанные с устройством механизма бизнес-процессов – это необходимо для успешной сдачи экзамена 1С:Специалист по платформе. Также, в качестве практического примера, будет решена задача, аналогичная экзаменационной.

777 рублей

Скрытие помеченных на удаление в справочнике 5

Статья Программист Нет файла v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free) Практика программирования

Корректно скрываем помеченных на удаление в справочнике, с иерархией и без. Вроде простая и нужная вещь, но почему-то нигде не встречалась

08.08.2012    11682    mikukrnet    7       

Исправление и проведение документов 5

Статья Программист Нет файла v77::БУ 1С7:ПУБ Россия Бесплатно (free) Практика программирования

Исправление и проведение документов, например, счетов-фактур, введенных на основании документов реализации, можно организовать многими способами. Описан сравнительно простой подход, реализованный и работающий несколько лет в реальной бухгалтерии 1Cv7.7. Без внешних компонентов.

23.07.2012    11827    BorisBelov    11       

Перенос данных УТ 10.3 => УТ 11 / КА 2 / ERP 2 (ЕРП 2) (документы, остатки и справочная информация из "1С:Управление торговлей, ред. 10.3" в УТ 11 / КА 2 / ERP 2). Обновлен до УТ 10.3.56.х, УТ 11.4.10.х, КА 2.4.10.х и ERP 2.4.10.х! Промо

Уже более 100 компаний приобрели перенос и выполнили переход на УТ 11 / КА 2 / ERP 2 с помощью нашей разработки! Обработка перехода с УТ 10.3 на УТ 11 / КА 2 / ERP 2 позволяет перенести не только остатки на указанную дату (как типовой перенос), но и все возможные документы за выбранный период. При выходе новых релизов этих программ оперативно выпускаем обновление обработки. Предоставляем техническую поддержку. Можем сделать бесплатный тестовый перенос!

29700 руб.

Ввод остатков по 76.ВА в 1С ПУБ 2

Статья Программист Нет файла v77::ОУ v77::БУ 1С7:ПУБ Россия БУ Бесплатно (free) Практика программирования

Статья посвящена найденному мной недостатку в конфигурации 1С 7.7 "Производство-услуги-бухгалтерия", связанному с вводом начальных остатков по 76.ВА.

29.04.2012    8311    Пользователь 1С    0       

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

Обновление базы 1с 7.7. с помощью движка 1с 8.х 92

Статья Системный администратор Программист Нет файла v7.7 1cv7.md Россия Бесплатно (free) Практика программирования Администрирование данных 1С

Если Вас угораздило в стандартную типовую конфу внести правки, причем в самый большой модуль, а именно глобальный. Если к тому же Вы внесли изменение в какую-то стандартную функцию, в которой 1с сама регулярно чего-то меняет, то любое обновление начинает доставать. Используя возможности движка платформы 1с 8.х можно существенно сэкономить себе время и нервы.

28.04.2012    16454    Valerich    31       

Ошибка при формировании отчета Авансы по налогу на имущество. В 1С:Предприятие 7.7. Регламентированная отчетность за I квартал 2012 года Обновление 12q1009 от 18.04.2012 г. 18

Статья Программист Нет файла v77::ОУ v77::БУ 1cv7.md Россия Бесплатно (free) Практика программирования

При формировании отчета NIMAVP1.ERT Авансы по налогу на имущество (версия 5.03) в разделе № 1-3 не сохраняет номера Страниц при выборе, что ведет к не сохранению и выводу печати двухмерного кода.

24.04.2012    7608    leo072    7       

С 2020 года сервис «Продление поддержки конфигурации 1С:УПП» подорожает вдвое Промо

Успейте продлить поддержку УПП до повышения цен! Фирма «1С» предупредила об изменении цен на сервис «Продление поддержки конфигурации "1С:Управление производственным предприятием"». С 1 января 2020 года сервис подорожает в два раза.

Ошибка при формировании отчета 4-ФСС для УСН 7,7 12q1007 6

Статья Программист Нет файла v77::БУ 1С7:Бух Россия НУ Бесплатно (free) Практика программирования

При формировании таблицы 6,7 раздела 2 возникает ошибка ИтАн.ИспользоватьСубконто(ВидыСубконто.ВидыПлатежейВФонды, Перечисление.ВидыПлатежей.Штраф); {C:\PROGRAM FILES\1CV77\SSTDEMO\EXTFORMS\RP12Q1.GRP\FSS4_1212.ERT(2330)}: Поле агрегатного объекта не обнаружено (ВидыПлатежейВФонды)

11.04.2012    9548    *Zed*    1       

v77. Робот 43

Инструменты и обработки no Внешняя обработка (ert,epf) v7.7 1cv7.md Россия Бесплатно (free) Практика программирования

Исполнитель Робот. Учебное пособие по программированию для детей дошкольного возраста. Без внешних компонент.

09.04.2012    10614    54    item    18       

Перенос данных УПП 1.3 => ERP 2 (ЕРП) / УТ 11 / КА 2.х (обработка переноса документов, остатков и справочников из "1С:Управление производственным предприятием, ред. 1.3" в ERP / УТ 11 / КА 2). Обновлен до УПП 1.3.127.х, КА 2.4.10.х и ERP 2.4.10.х! Промо

Обработка позволяет переносить из УПП 1.3 в ERP 2 документы за выбранный период и остатки. Типовая обработка от фирмы 1С документы не переносит. Также исправлены ошибки типовой обработки. При выходе новых релизов обновление высылается бесплатно в течение года. Разработка будет полезна фирмам-франчайзи, которые периодически выполняют такой перенос данных для заказчиков. Вы можете один раз приобрести обработку переноса, и потом бесплатно получать обновления при выходе новых релизов конфигураций 1С.

29700 руб.

Запуск внешней обработки по расписанию v7.7 39

Статья Программист Нет файла v7.7 1cv7.md Россия Windows Бесплатно (free) Практика программирования Администрирование данных 1С

Неоднократно возникали задачи организовать, например ежедневную выгрузку и отправку отчетов по эл.почте, и вот…

20.03.2012    40466    Yury1001    17       

v77. Закладки в многоуровневом справочнике аля Total Commander 28

Инструменты и обработки Программист Конфигурация (md, cf) v7.7 1cv7.md Россия Бесплатно (free) Практика программирования

В больших многоуровневых справочниках можно ускорить доступ пользователю к наиболее популярным группам.

09.03.2012    9237    44    item    17       

Перенос данных КА 1.1 => ERP 2 (ЕРП) (обработка переноса документов, остатков и справочной информации из "1С:Комплексная автоматизация, ред. 1.1" в "1С:ERP Управление предприятием, ред 2"). Обновлен до КА 1.1.115.х и ERP 2.4.10.х Промо

Обработка позволяет переносить из КА 1.1 в ERP 2 документы за выбранный период и остатки. Типовая обработка от фирмы 1С документы не переносит. Также исправлены ошибки типовой обработки. При выходе новых релизов обновление высылается бесплатно в течение года. Разработка будет полезна фирмам-франчайзи, которые периодически выполняют такой перенос данных для заказчиков. Вы можете один раз приобрести обработку переноса, и потом бесплатно получать обновления в случае выхода новых релизов конфигураций 1С.

29700 руб.

v77. Паинт 53

Инструменты и обработки Программист Внешняя обработка (ert,epf) v7.7 1cv7.md Россия Бесплатно (free) Практика программирования

v77. 1С:Паинт :) Такая вот игрушка. Без внешних компонент.

06.03.2012    12592    81    item    38       

Программы для исполнения 488-ФЗ: Маркировка товаров Промо

1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.

Ошибка в 1С:Бух77 ред.533 Начисление ФФОМС при ЕНВД 11

Статья Программист Нет файла v77::БУ 1С7:Бух Россия Зарплата Бесплатно (free) Практика программирования

При начислении налогов с ФОТ (док.ЗакрытиеМесяца) не расчитываются налоги ФФОМС, если начисление зарплаты проводится как "облагаемые ЕНВД".

22.01.2012    8324    lelbraun    3       

Базовый курс для начинающих 1С-программистов. Пятый поток. Онлайн-курс с 12 февраля по 15 апреля 2020 г. Промо

Данный онлайн-курс является начальной ступенью по изучению базовых принципов программирования в системе “1С:Предприятие” и предназначен для обучения 1С-программированию “с нуля”.

4500/9500 рублей

Как уменьшить количество заблокированных объектов 26

Статья Программист Нет файла v7.7 1cv7.md Россия Бесплатно (free) Практика программирования

История о том как я решил пересобрать форму справочника клиентов и чем это все закончилось...

12.01.2012    13691    ShEvOvIcH    18       

Медленное формирование отчета в ФСС. Ошибка в алгоритме файл: ESN_GET.ERT 6

Статья Системный администратор Программист Нет файла v77::БУ 1С7:Бух Россия Бесплатно (free) Практика программирования

Достаточно старая ошибка 1С (исправляю уже пару лет) в файле ESN_GET.ERT (1С7.7 бухгалтерский учет). Проявляется в том, что очень медленно формируются регламентные отчеты в фонды ФСС и ПФР, если в типовой бухгалтерии ведётся начисление зарплаты сотрудникам и количество сотрудников превышает определённое количество (в моём примере 90, но замедление скорости видно и на 20)

11.01.2012    5732    Digo65    2       

Перенос данных КА 1.1 / УПП 1.3 => БП 3.0 (перенос остатков, документов и справочников из "1С:Комплексная автоматизация 1.1" / УПП 1.3 в "1С:Бухгалтерия 3.0"). Обновлен до версий КА 1.1.115.х, УПП 1.3.127.х! Промо

Разработка позволяет перенести остатки по всем счетам бух.учета в программу "1С:Бухгалтерия предприятия 8", ред. 3.0 на выбранную дату начала ведения учета. Также переносятся документы за период и вся необходимая справочная информация. Правила оперативно обновляю при выходе новых релизов. Рассылка обновлений правил бесплатно в течение 12 месяцев. Есть видеодемонстрация проведения переноса данных. Конфигурации при использовании обмена остаются полностью типовыми. Перенос данных возможен в Бухгалтерию 3.0 версии ПРОФ, КОРП или базовую.

24700 руб.

Ошибка в обработке "ПодборЗатратПоУслугам" в типовой Бухгалтерии для бюджетных учреждений 6.2 (647) 2

Статья Программист Нет файла v77::БУ 1С7:ББУ Государственные, бюджетные структуры Россия Бесплатно (free) Практика программирования

В текущем на момент публикации релизе 647 конфигурации "Бухгалтерия для бюджетных учреждений 6.2" при заполнении документа "Списание затрат по услугам" наблюдается следующая ошибка: в режиме заполнения (F5) невозможно выбрать значение субконто, если тип субконто - подчиненный справочник.

30.12.2011    8747    demon_infernal    1       

Ошибка при формировании Отчета по налогу на прибыль за 9 месяцев 2011 г. (версия 11q300x) для Бухгалтерии 7.7 6

Статья Программист Нет файла v77::БУ 1С7:Бух Россия Налог на прибыль Бесплатно (free) Регламентированная отчетность Практика программирования

При формировании Отчета по налогу на прибыль из конфигурации Бухгалтерский учет - Регламентированная отчетность за 9 месяцев 2011 года (версия 11q3002/11q3003/11q3004) - неправильно формируются суммы ежемесячных авансовых платежей в бюджет субъекта Российской Федерации для организаций, имеющих обособленные подразделения (подраздел 1.2 раздела 1 ОСН, строки 220-240)

28.10.2011    11839    vkr    5