js正则那些事

js常用正则

正则在我们对表单进行一些操作的时候,用户还是很大的,虽然h5已经有一些新标签可以对input进行校验,但是我们总能遇到一些奇怪的校验方式。

 

下面是我个人总结的一些常用正则:

 邮箱验证:/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/
 手机号验证:^1(3|4|5|7|8)\d{9}$
身份证验证:/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/(15位的)
 (19位的) /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/
网络链接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
图片链接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+)
邮政编码:[1-9]{1}(\d+){5}

当然还有一些是我们需要对表单进行一些校验,这些是肯定不够的:总结的还有一下几点:

密码强度(数字和字母  最少八位):/^(?!([a-zA-Z]+|\d+)$)[a-zA-Z\d]{8,20}$/

只允许汉字:/^[\u4e00-\u9fa5]+$/

只允许数字: /^[0-9]+$/

只允许汉字和字母: /^[\u4e00-\u9fa5a-zA-Z]+$/

只允许字母和数字:/^[0-9a-zA-Z]+$/

千位分隔符(整数):num.replace(/\d{1,3}(?=(\d{3})+$)/g,function(s){ return s+','})
分隔符升级版(使用三目表达式):num .toString().indexOf('.') != -1 ? 
num.toString().replace(/(\d)(?=(\d{3})+\.)/g, function($0, $1) { return $1 + ","; })
: num.toString().replace(/(\d)(?=(\d{3}))/g, function($0, $1) { return $1 + ","; })

当然正则肯定用的不止这些地方,还有很多我们想不到的地方也可以使用,只是目前来说,我常使用的就这些,还有一些不常用的就不写出来了,如果有需要,请拿走,谢谢!!!

posted @ 2019-07-29 10:21  帅blog  阅读(179)  评论(0编辑  收藏  举报
/* 鼠标点击求赞文字特效 */