Простая проверка электронной почты: методы и примеры кода для регистронезависимых доменов верхнего уровня и длины 2–6 символов

Проверка электронной почты — важнейший аспект веб-разработки, когда речь идет об обработке вводимых пользователем данных и обеспечении целостности данных. В этой статье мы рассмотрим различные методы проверки адресов электронной почты, уделяя особое внимание нечувствительности к регистру и ограничениям длины домена верхнего уровня (TLD) в 2–6 символов. Мы предоставим примеры кода на разных языках программирования, чтобы помочь вам реализовать эти проверки в ваших проектах.

Метод 1: подход с использованием регулярных выражений (regex)

Один из наиболее распространенных и эффективных способов проверки адресов электронной почты — использование регулярных выражений. Вот пример шаблона регулярного выражения, который обрабатывает нечувствительность к регистру и обеспечивает ограничение длины TLD:

^(?i)[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,6}$

Объяснение:

  • ^и $обозначают начало и конец строки соответственно.
  • (?i)включает нечувствительность к регистру.
  • [a-z0-9._%+-]+соответствует одному или нескольким вхождениям строчных букв, цифр, точек, символов подчеркивания, знаков процента, знаков плюс или дефисов в локальной части адреса электронной почты.
  • @[a-z0-9.-]+соответствует символу “@”, за которым следуют одно или несколько строчных букв, цифр, точек или дефисов в доменной части адреса электронной почты.
  • \.[a-z]{2,6}соответствует точке, за которой следуют 2–6 строчных букв, обозначающих TLD.

Примеры кода:

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

  1. JavaScript:
const emailRegex = /^(?i)[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,6}$/;
function isValidEmail(email) {
  return emailRegex.test(email);
}
// Usage example
const email = 'example@example.com';
console.log(isValidEmail(email)); // Output: true
  1. Python:
import re
email_regex = r'^(?i)[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,6}$'
def is_valid_email(email):
    return re.match(email_regex, email) is not None
# Usage example
email = 'example@example.com'
print(is_valid_email(email)) # Output: True

Проверка адресов электронной почты — важная часть веб-разработки, обеспечивающая точность и целостность пользовательских данных. В этой статье мы исследовали подход к проверке электронной почты на основе регулярных выражений, учитывая как нечувствительность к регистру, так и ограничения на длину домена верхнего уровня. Мы предоставили примеры кода на JavaScript и Python для демонстрации реализации. Не забудьте объединить проверку электронной почты с другими проверками на стороне сервера, чтобы повысить безопасность и проверку данных в ваших приложениях.

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