Here is a simple and robust way to check for the validity of an email address syntax directly in the browser. No need for crazy regular expressions.
e = document.createElement('input')
e.type = 'email'
// check some email addresses
e.value = 'hi@'
e.validity.valid
// false
e.value = '[email protected]'
e.validity.valid
//true
You can go further and explore the HTML5 email input element for more functionality, using the pattern
attribute for a custom regexp, checking for too long/short or empty value and more.