最近工作上大量用到了正则表达式,在此记录一下。(注:本文注重实际效用,具体理论不详述)
作为官方套路,首先还是简单看看度娘上是怎么说的:"正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),
计算机科学的一个概念。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。"
ok,老司机直奔主题!
实例one.验证手机号码
[img]http://dl2.iteye.com/upload/attachment/0124/1904/5229f23c-c10b-3b81-a5ef-0604dcff8177.png[/img]
/^1[34578]\d{9}$/
正则校验===》
//手机号校验
function checkTelNum(str) {
var reg=/^1[34578]\d{9}$/;//首位为1,第二位为34578,总共11位
if(reg.test(str)){//正则对象的test()方法
return true;
}else
return false;
}
实例two.验证只能输入小数
[img]http://dl2.iteye.com/upload/attachment/0124/1906/ea3ba7e5-ce90-37d8-927a-3dfeffe2258a.png[/img]
通过onkeyup事件动态控制输入的内容:只能是小数
onkeyup='this.value=this.value.replace(/[^0-9|^\\.]/gi,"")'
实例three.验证只能输入数字
[img]http://dl2.iteye.com/upload/attachment/0124/1908/981c7a7e-8e82-3f8a-9c64-b1406ef5b77e.png[/img]
通过onkeyup事件动态控制输入的内容:只能是数字
onkeyup='this.value=this.value.replace(/\D/gi,"")'
实例four.验证不能输入特殊字符
理由很多喽,防止sql注入等等
[img]http://dl2.iteye.com/upload/attachment/0124/1910/04509963-3dea-3016-8f15-ad503e0979c8.png[/img]
onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\@\.]/g,'')"
这里通过onkeyup事件动态控制输入的内容:只能是a-zA-Z0-9和汉字,从而限制特殊字符的输入
当然也可以直接用其他思路的,解决问题是关键。
实例five.验证e-mail
("^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$");
正则校验参看手机号码的校验
实例six.验证只能输入汉字
"^[\u4e00-\u9fa5]{0,}$"。
正则校验参看手机号码的校验
实例seven.只能输入非零的正整数
"^\+?[1-9][0-9]*$"。
正则校验参看手机号码的校验
实例eight.验证身份证号(15位或18位数字)
[img]http://dl2.iteye.com/upload/attachment/0124/1912/ebdbf39c-fdd6-3740-af30-d021fecb1fb9.png[/img]
"\d{14}[[0-9],0-9xX]";
正则校验参看手机号码的校验
ok,时间不早了,先分享到此,其它校验后期奉上,敬请品鉴。
作为官方套路,首先还是简单看看度娘上是怎么说的:"正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),
计算机科学的一个概念。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。"
ok,老司机直奔主题!
实例one.验证手机号码
[img]http://dl2.iteye.com/upload/attachment/0124/1904/5229f23c-c10b-3b81-a5ef-0604dcff8177.png[/img]
/^1[34578]\d{9}$/
正则校验===》
//手机号校验
function checkTelNum(str) {
var reg=/^1[34578]\d{9}$/;//首位为1,第二位为34578,总共11位
if(reg.test(str)){//正则对象的test()方法
return true;
}else
return false;
}
实例two.验证只能输入小数
[img]http://dl2.iteye.com/upload/attachment/0124/1906/ea3ba7e5-ce90-37d8-927a-3dfeffe2258a.png[/img]
通过onkeyup事件动态控制输入的内容:只能是小数
onkeyup='this.value=this.value.replace(/[^0-9|^\\.]/gi,"")'
实例three.验证只能输入数字
[img]http://dl2.iteye.com/upload/attachment/0124/1908/981c7a7e-8e82-3f8a-9c64-b1406ef5b77e.png[/img]
通过onkeyup事件动态控制输入的内容:只能是数字
onkeyup='this.value=this.value.replace(/\D/gi,"")'
实例four.验证不能输入特殊字符
理由很多喽,防止sql注入等等
[img]http://dl2.iteye.com/upload/attachment/0124/1910/04509963-3dea-3016-8f15-ad503e0979c8.png[/img]
onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\@\.]/g,'')"
这里通过onkeyup事件动态控制输入的内容:只能是a-zA-Z0-9和汉字,从而限制特殊字符的输入
当然也可以直接用其他思路的,解决问题是关键。
实例five.验证e-mail
("^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$");
正则校验参看手机号码的校验
实例six.验证只能输入汉字
"^[\u4e00-\u9fa5]{0,}$"。
正则校验参看手机号码的校验
实例seven.只能输入非零的正整数
"^\+?[1-9][0-9]*$"。
正则校验参看手机号码的校验
实例eight.验证身份证号(15位或18位数字)
[img]http://dl2.iteye.com/upload/attachment/0124/1912/ebdbf39c-fdd6-3740-af30-d021fecb1fb9.png[/img]
"\d{14}[[0-9],0-9xX]";
正则校验参看手机号码的校验
ok,时间不早了,先分享到此,其它校验后期奉上,敬请品鉴。
683

被折叠的 条评论
为什么被折叠?



