note 24084 added to function.preg-match

From: Date: Tue, 06 Aug 2002 09:57:20 +0000
Subject: note 24084 added to function.preg-match
Groups: php.notes 
Request: Send a blank email to php-notes+get-34386@lists.php.net to get a copy of this message
This preg-based function checks whether an e-mail address is formally valid. It works with all top level domains including the new ones (.biz, .info, .museum etc.) and the special ones (.arpa, .int etc.) as well as with e-mail addresses based on IPs (e.g. webmaster@123.45.123.45). function is_email($email) { return(preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]| [[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero| af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb| bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by| bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr| cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh| er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi| gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht| hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke| kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls| lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq| mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net| nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph| pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb| sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy| sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz| ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye| yt|yu|za|zm|zw)|(([0-9][0-9]?|[0-1][0-9][0-9]| [2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?| [0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i", $email)); } (Note that the line-broken regular expression is one long string without any space or new-line characters!) Returns true if the address is valid, false otherwise. -- http://www.php.net/manual/en/function.preg-match.php http://master.php.net/manage/user-notes.php?action=edit+24084 http://master.php.net/manage/user-notes.php?action=delete+24084 http://master.php.net/manage/user-notes.php?action=reject+24084

« previous php.notes (#34386) next »