From c644c798bfcdc1b0bbb1f0ca59e2e2664ff3fdd0 Mon Sep 17 00:00:00 2001 From: Jb Landry Date: Wed, 4 Nov 2020 19:28:35 -0500 Subject: [PATCH] Switch email pattern to practical implementation of RFC 5322 --- src/kafe/string-validate.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/kafe/string-validate.js b/src/kafe/string-validate.js index 4bb7bc3..5c527f9 100644 --- a/src/kafe/string-validate.js +++ b/src/kafe/string-validate.js @@ -46,7 +46,10 @@ validate.isEmail = function(str) { str = str.replace(/^\s*|\s*$/g, ''); str = str.replace(/^\t*|\t*$/g, ''); - return (/^\w+([\.\+-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(str)); + + // Practical implementation of RFC 5322 + // https://www.regular-expressions.info/email.html + return (/^[a-z0-9!#$%&'*+/=?^_‘{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_‘{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/.test(str)); };