简体   繁体   中英

validate a .edu or .ac email address

I'm a noob but trying vigorously to simply validate email addresses that only end in ".edu" or ".ac" is there a simple function/script/solution to this seemingly simple problem? able to use php,javascript or jquery.

Any help would be great thanks in advance!

You want a regular expression.

The following pattern tests for any e-mail address ending in a top-level domain like .com, .org, .net, .biz etc.

[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+(?:[A-Z]{2}|com|org|net|gov|mil|biz|info|mobi|name|aero|jobs|museum)\b

You can use the preg_match function in PHP, pass this as the pattern, and just change the list of top-level domains you want to accept at the end. If the function returns 0, the address didn't validate, if it returns 1, it did match.

Regex source: http://www.regular-expressions.info/email.html

preg_match: http://php.net/manual/en/function.preg-match.php

jQuery also has a validate plugin with built-in patterns for validating e-mail addresses, but you'd need to combine this with the server-side validation in PHP for those people that have Javascript disabled.

Validate plugin: http://docs.jquery.com/Plugins/Validation/validate

if( strpos($_post['email'] , '.edu' ) == true){
....
}

NOTE: the 'name' in the input field of the email address should be 'email'

It is the most simple way out there to check if ".edu" is present in that email

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM