前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >邮箱、手机号、url等常用正则表达式

邮箱、手机号、url等常用正则表达式

作者头像
小黑同学
发布2020-11-24 10:41:38
16.2K0
发布2020-11-24 10:41:38
举报
文章被收录于专栏:E=mc²E=mc²

常用规则

正则表达式

Email地址:

^\w+(-+.\w+)*@\w+(-.\w+)*.\w+(-.\w+)*$

域名:

a-zA-Z0-9{0,62}(.a-zA-Z0-9{0,62})+.?

InternetURL:

a-zA-z+://^\s* 或 ^http://([\w-]+.)+[\w-]+(/[\w-./?%&=]*)?$

手机号码:

^(130-9|145|7|150|1|2|3|4|5|6|7|8|9|180|1|2|3|5|6|7|8|9)\d{8}$

电话号码(“XXX-XXXXXXX”、“XXXX-XXXXXXXX”、“XXX-XXXXXXX”、“XXX-XXXXXXXX”、"XXXXXXX"和"XXXXXXXX):

^((\d{3,4}-)|\d{3.4}-)?\d{7,8}$

国内电话号码(0511-4405222、021-87888822):

\d{3}-\d{8}|\d{4}-\d{7}

电话号码正则表达式(支持手机号码,3-4位区号,7-8位直播号码,1-4位分机号):

((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)

身份证号(15位、18位数字),最后一位是校验位,可能为数字或字符X:

(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)

帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):

^a-zA-Z{4,15}$

密码(以字母开头,长度在6~18之间,只能包含字母、数字和下划线):

^a-zA-Z\w{5,17}$

强密码(必须包含大小写字母和数字的组合,不能使用特殊字符,长度在 8-10 之间):

^(?=.*\d)(?=.*a-z)(?=.*A-Z)a-zA-Z0-9{8,10}$

强密码(必须包含大小写字母和数字的组合,可以使用特殊字符,长度在8-10之间):

^(?=.*\d)(?=.*a-z)(?=.*A-Z).{8,10}$

日期格式:

^\d{4}-\d{1,2}-\d{1,2}

一年的12个月(01~09和1~12):

^(0?1-9|10-2)$

一个月的31天(01~09和1~31):

^((0?1-9)|((1|2)0-9)|30|31)$

钱的输入格式:有四种钱的表示形式我们可以接受:“10000.00” 和 “10,000.00”, 和没有 “分” 的 “10000” 和 “10,000”:

^1-9*$

这表示任意一个不以0开头的数字,但是,这也意味着一个字符"0"不通过,所以我们采用下面的形式:

^(0|1-9*)$

一个0或者一个不以0开头的数字.我们还可以允许开头有一个负号:

^(0|-?1-9*)$

这表示一个0或者一个可能为负的开头不为0的数字.让用户以0开头好了.把负号的也去掉,因为钱总不能是负的吧。下面我们要加的是说明可能的小数部分:

^0-9+(.0-9+)?$

必须说明的是,小数点后面至少应该有1位数,所以"10."是不通过的,但是 “10” 和 “10.2” 是通过的:

^0-9+(.0-9{2})?$

这样我们规定小数点后面必须有两位,如果你认为太苛刻了,可以这样:

^0-9+(.0-9{1,2})?$

这样就允许用户只写一位小数.下面我们该考虑数字中的逗号了,我们可以这样:

^0-9{1,3}(,0-9{3})*(.0-9{1,2})?$

1到3个数字,后面跟着任意个 逗号+3个数字,逗号成为可选,而不是必须:

^(0-9+|0-9{1,3}(,0-9{3})*)(.0-9{1,2})?$备注:这就是最终结果了,别忘了"+“可以用”*"替代如果你觉得空字符串也可以接受的话(奇怪,为什么?)最后,别忘了在用函数时去掉去掉那个反斜杠,一般的错误都在这里

xml文件:

^(a-zA-Z+-?)+a-zA-Z0-9+\.x|Xl|L$

中文字符的正则表达式:

\u4e00-\u9fa5

双字节字符:

^\x00-\xff

空白行的正则表达式:

\n\s*\r(可以用来删除空白行)

HTML标记的正则表达式:

<(\S*?)^>*>.*?|<.*? />

( 首尾空白字符的正则表达式:

^\s*|\s*$或(^\s*)|(\s*$)(可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式)

腾讯QQ号:

1-9{4,} (腾讯QQ号从10000开始)

中国邮政编码:

1-9\d{5}(?!\d) (中国邮政编码为6位数字)

IPv4地址:

((2(50-5|0-4\d))|0-1?\d{1,2})(.((2(50-5|0-4\d))|0-1?\d{1,2})){3}


正则表达式语法详解

正则在线校验

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-11-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云直播
云直播(Cloud Streaming Services,CSS)为您提供极速、稳定、专业的云端直播处理服务,根据业务的不同直播场景需求,云直播提供了标准直播、快直播、云导播台三种服务,分别针对大规模实时观看、超低延时直播、便捷云端导播的场景,配合腾讯云视立方·直播 SDK,为您提供一站式的音视频直播解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档