正则判断应用和判断总结
表单验证案例
(要求:①长度6~18 ②首位必须是字母 ③所有的字符都是数字、字母和下划线组成)
失去焦点事件
oUsername.onblur = function(){
获取输入框的内容
var oValue = oUsername.value;
1、判断用户名的长度6~18长度
if(oValue.length < 6 || oValue.length > 18){
oUsernameSpan.style.color = 'red';
oUsernameSpan.innerHTML = "!长度应为6~18个字符";
2、判断首字符是否是字母
}else if(/[^a-zA-Z]/.test(oValue[0])){
oUsernameSpan.style.color = 'red';
oUsernameSpan.innerHTML = "!邮件地址必需以英文字母开头";
3、判断所有的字符都是数字、字母和下划线组成
}else if(/\W/.test(oValue)){
oUsernameSpan.style.color = 'red';
oUsernameSpan.innerHTML = "!邮件地址需由字母、数字或下划线组成";
}else{
oUsernameSpan.style.color = 'green';
oUsernameSpan.innerHTML = '✅恭喜,该邮件地址可注册';
}
正则判断实用总结
01.由数字、26个英文字母或者下划线组成的字符串: ^[0-9a-zA-Z_]{1,}$
02.正整数:^[0-9]*[1-9][0-9]*$
03.非正整数(负整数 + 0):^((-/d+)|(0+))$
04.整数:^-?/d+$
05.非负浮点数(正浮点数 + 0): ^/d+(/./d+)?$
06.正浮点数 : ^(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*))$
07.浮点数 : ^(-?/d+)(/./d+)?$
08.由26个英文字母组成的字符串 : ^[A-Za-z]+$
09.由26个英文字母的大写组成的字符串 : ^[A-Z]+$
10.由26个英文字母的小写组成的字符串 :^[a-z]+$
11.由数字和26个英文字母组成的字符串 :^[A-Za-z0-9]+$
12.由数字、26个英文字母或者下划线组成的字符串 : ^/w+$
13.email地址 :^[/w-]+(/.[/w-]+)*@[/w-]+(/.[/w-]+)+$
14.年-月-日:/^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/
15.Emil: ^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$
16.电话号码: (d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?
17.IP地址:^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$
18.匹配中文字符的正则表达式: [/u4e00-/u9fa5]
19.匹配首尾空格的正则表达式: (^/s*)|(/s*$)
20.匹配Email地址的正则表达式: /w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*
21.匹配国内电话号码:(/d{3}-|/d{4}-)?(/d{8}|/d{7})?
22.匹配腾讯QQ号: ^[1-9]*[1-9][0-9]*$
23.只能输入数字:^[0-9]*$
24.只能输入n位的数字:^/d{n}$
25.只能输入至少n位的数字:^/d{n,}$
26.只能输入m~n位的数字:^/d{m,n}$
27.只能输入零和非零开头的数字: ^(0|[1-9][0-9]*)$
28.只能输入有两位小数的正实数: ^[0-9]+(.[0-9]{2})?$
29.只能输入有1~3位小数的正实数: ^[0-9]+(.[0-9]{1,3})?$
30.只能输入由26个英文字母组成的字符串: ^[A-Za-z]+$
31.只能输入由26个大写英文字母组成的字符串:^[A-Z]+$
32.只能输入由26个小写英文字母组成的字符串:^[a-z]+$
33.只能输入由数字和26个英文字母组成的字符串: ^[A-Za-z0-9]+$
附:常用元字符和限定符