How to use it
Step 1
Collect representative samples
Include plus aliases, subdomains, invalid whitespace cases, and clearly broken inputs.
Step 2
Write the smallest useful pattern
Match your business requirement instead of chasing full RFC complexity.
Step 3
Compare accept and reject cases
Confirm valid examples pass and known bad inputs fail for the right reason.