validateEmailEnhanced method

bool validateEmailEnhanced()

Validates whether the given string is a properly formatted email address using an enhanced regular expression.

This method checks the string against RegExpPatterns.emailEnhanced, a more comprehensive email validation pattern compared to the standard regex.

Key Features:

  • Supports standard email formats (e.g., user@example.com).
  • Allows plus addressing (e.g., user+alias@example.com).
  • Supports subdomains (e.g., user@mail.example.co.uk).
  • Validates domain literals (e.g., user@[192.168.1.1]).
  • Enforces correct placement of special characters (., _, -, etc.).
  • Rejects emails with multiple consecutive dots or missing domain parts.

Returns:

  • true if the string matches a valid email pattern.
  • false if the string is null, empty, or incorrectly formatted.

Example Usage:

String email1 = "john.doe@example.com";
bool isValid1 = email1.validateEmailEnhanced(); // true

String email2 = "user+alias@sub.domain.com";
bool isValid2 = email2.validateEmailEnhanced(); // true

String email3 = "invalid.email@com";
bool isValid3 = email3.validateEmailEnhanced(); // false

String email4 = "user@.invalid.com";
bool isValid4 = email4.validateEmailEnhanced(); // false

This method provides a more accurate and reliable email validation compared to simpler regex patterns. It is recommended when strict email format verification is needed, such as during user registration or form validation in Flutter applications.

Implementation

bool validateEmailEnhanced() => hasMatch(this, RegExpPatterns.emailEnhanced);