Skip to content

Conversation

@SumithThota
Copy link
Contributor

PR Description:

Fixes Issue : #1997

Enhanced Email Validation Regex in Client Script.
The existing email regex pattern: ^[^\s@]+@[^\s@]+\.[^\s@]+$ used in the source fails to handle several edge cases and may incorrectly validate or reject certain legitimate email formats, such as:

  1. Emails with quoted local parts ("john.doe"@example.com)
  2. Emails with dots within the local segment (user.name@example.com)
  3. Emails using IP addresses as domains (user@[192.168.0.1])

Proposal

Update the email regex pattern to: ^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$

This pattern handles:

  • Quoted local parts
  • Dots within the local segment
  • IP-based domains
  • Complex but valid email formats

Pull Request Checklist

Overview

  • Put an x inside of the square brackets to check each item.
  • I have read and understood the CONTRIBUTING.md guidelines
  • My pull request has a descriptive title that accurately reflects the changes and the description has been filled in above.
  • I've included only files relevant to the changes described in the PR title and description
  • I've created a new branch in my forked repository for this contribution

Code Quality

  • My code is relevant to ServiceNow developers
  • My code snippets expand meaningfully on official ServiceNow documentation (if applicable)
  • I've disclosed use of ES2021 features (if applicable)
  • I've tested my code snippets in a ServiceNow environment (where possible)

Repository Structure Compliance

  • I've placed my code snippet(s) in one of the required top-level categories:
    • Core ServiceNow APIs/
    • Server-Side Components/
    • Client-Side Components/
    • Modern Development/
    • Integration/
    • Specialized Areas/
  • I've used appropriate sub-categories within the top-level categories
  • Each code snippet has its own folder with a descriptive name

Documentation

  • I've included a README.md file for each code snippet
  • The README.md includes:
    • Description of the code snippet functionality
    • Usage instructions or examples
    • Any prerequisites or dependencies
    • (Optional) Screenshots or diagrams if helpful

Restrictions

  • My PR does not include XML exports of ServiceNow records
  • My PR does not contain sensitive information (passwords, API keys, tokens)
  • My PR does not include changes that fall outside the described scope

Updated with Comprehensive email regex pattern
Added a comprehensive regex pattern for email validation.
@snamjosh
Copy link
Contributor

Thank you for your contribution. However, it doesn’t comply with our contributing guidelines. As a reminder, the general requirements (as outlined in the CONTRIBUTING.md file) are the following: follow the folder+subfolder+snippetfolder guidelines and include a readme.md file explaining what the code snippet does. Review your contribution against the guidelines and make the necessary adjustments. Closing this for now. Once you make additional changes, feel free to re-open this Pull Request or create a new one.

@snamjosh snamjosh closed this Oct 10, 2025
@SumithThota SumithThota deleted the enhanced-email-pattern branch October 11, 2025 06:01
@SapphicFire SapphicFire added the hacktoberfest-accepted The PR is accepted for Hacktoberfest, regardless of being merged or not label Oct 12, 2025
@SapphicFire SapphicFire self-assigned this Oct 12, 2025
@SapphicFire
Copy link
Contributor

@SumithThota - Apologies for the closure of this item, as it was erroneous. This is an update to an existing snippet which had a related README.md - do consider recreating or undeleting this branch, as this would be a valid contribution. I have marked this as hacktoberfest-accepted in the interim.

@SumithThota
Copy link
Contributor Author

SumithThota commented Oct 12, 2025

Hi @SapphicFire I have recreated a new pull request #2052, please do check it and add hacktoberfest-accepted label to it

@SapphicFire SapphicFire removed the hacktoberfest-accepted The PR is accepted for Hacktoberfest, regardless of being merged or not label Oct 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants