/**
 * function mailAddressValidator( aMail )
 * @param aMail  a string containg a mail address to validate
 * @return true if aMail is rfc compliant ( http://tools.ietf.or/html/rfc5321 ).
 * by Gianni D'Elia (regex) and Andrea Grassi (regex js dialect)
 * 
 */

function mailAddressValidator( aMail ){
	var re = /^(([\w!#\$%&'*+\-\/=?^_`{\|}~]+(?:\.[\w!#\$%&'*+\-\/=?^_`{\|}~]+)*)|("[\w!#\$%&'*+\-\/=?^_`{\|}~()<>\\(\\):;@,\.\s]+\s*"))@(((?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9][0-9])|(?:[1-9]?[0-9]))(?:\.(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9][0-9])|(?:[1-9]?[0-9]))){3})|([\w!#\$%&'*+\-\/=?^_`{\|}~]+(?:\.[\w!#\$%&'*+\-\/=?^_`{\|}~]+)*)|(\[[\w!#\$%&'*+\-\/=?^_`{\|}~<>\\(\\):;@,\."\s]+\s*\]))$/ ;
	return re.test( aMail );
}

