一般都是用<正则表达式>来判断.什么是正则表达式?
就是用如下特殊符号或其组合来代表某个字符(以下符号可以通配所有字符)
符号 说明 . 代表除换行符以外的任意字符 \w 代表字母或数字或下划线或汉字 \s 代表任意的空白符 \d 代表数字 \b 代表单词的开始或结束 ^ 代表字符串的开始 $ 代表字符串的结束
如 abc120 可以用这样的正则表达式表示: \w\w\w\d\d\d, 或者 \w\w\w\w\w\w 或者 ...... (六个英文句点) 等等...
用如下符号来代表某个可能字符的集合
[ ]
如电话号码的第n位,一定属于这个集合>[0-9] ,即0到9;某个外国人名字的第n个字母,一定属于这个集合 [a-z A-Z],即26个英文字母的大小写组成的集合用如下符号来代表 上面所表达的某个字符或某个集合的重复:
符号 说明 * 重复零次或更多次 + 重复一次或更多次 ? 重复零次或一次 {n} 重复n次 {n,} 重复n次或更多次 {n,m} 重复n到m次
然后剩下的符号基本就是原意了,如 邮箱符号 @ 就表示邮箱符号,等号 = 就表示等号, 横杠 - 就表示横杠等
举个例子吧,给你解释一下下面这个判断邮箱格式的正则表达式的意思(下面看不懂的可以查看上面给的各个符号的意义):
^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+\\.[a-zA-Z0-9_-]+$
把上面的表达式分段,并介绍每个字段的意思 1 ^ ;2 [a-zA-Z0-9_-]+ ;3 @ ; 4 [a-zA-Z0-9_-]+ ; 5 \\. ;6 [a-zA-Z0-9_-]+ ;7 $
下面举一个例子:
var sletter=document.f1.letter.value; //获取表单对象的值 if(sletter!=""){ var reg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/; isok=reg.test(sletter); } if (!isok) { alert("邮箱格式不正确!"); return false; }
更多推荐:《js教程》
The above is the detailed content of How to determine whether the email format entered by the user is correct?. For more information, please follow other related articles on the PHP Chinese website!