JSFiddle - React, Tailwind, and code Playground

Email Regex Redux

by nickadeemus2002

JavaScript

var emailPattern = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i;  // source: http://www.regular-expressions.info/email.html
var simpleEmail = '[email protected]';
var trickyEmail = '[email protected]';
var badSimpleEmail = 'chris@gm!com';
var badTrickyEmail = 'chris():[email protected]';

var simpleResult = emailPattern.test(simpleEmail);
var trickyResult = emailPattern.test(trickyEmail);
var badSimpleResult = emailPattern.test(badSimpleEmail);
var badTrickyResult = emailPattern.test(badTrickyEmail);

//console.log('valid?: [email protected] => ', simpleResult);                   			//true
//console.log('valid?: [email protected] => ', trickyResult);        			//true
//console.log('valid?: chris@gm!com => ', badSimpleResult);                			//false
//console.log('valid?: chris():[email protected] => ', badTrickyResult);   //false




var URL_REGEX = /(.*http:\/\/*|.*https:\/\/*)?(\w*)?\.?([\w\-]*)?\.?(\w*)?(\/)?(.*)/g;
var DIFF_URL_REGEX = /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,4}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g;

var simpleUrl = 'http://www.happy.com';
var liveUrl = 'http://www.cool.com.au/ersdfs?dfd=dfgd@s=1';  //http://www.cool.com.au/ersdfs?dfd=dfgd@s=1 //'http://www.walter_singer.com'
var badUrl = 'http://www.wal987ter-W-singercom';

var simpleUrlResult =  URL_REGEX.test(simpleUrl);
var simpleUrlResult2 =  DIFF_URL_REGEX.test(simpleUrl);

var liveUrlResult =  URL_REGEX.test(liveUrl);
var liveUrlResult2 =  DIFF_URL_REGEX.test(liveUrl);

var badUrlResult =  URL_REGEX.test(badUrl);
var badUrlResult2 =  DIFF_URL_REGEX.test(badUrl);

console.log('valid? -> http://www.happy.com : ', simpleUrlResult); 
console.log('valid? -> http://www.walter-singer.com : ', liveUrlResult); 
console.log('valid? -> httpwww.wal____987ter??-W-singercom : ', badUrlResult);
console.log('**************************************************************************************** ');
console.log('valid? (simpleUrlResult2) ->...