常用正则表达式实例

通常写一个合适的正则表达式是比较耗费时间的,因此我们可以保留一些常用的正则表达式以备不时之需。但是需要说明的是,没有任何一个人敢说自己写的正则表达式是百分之百严谨的,而且也没有百分之百相同的匹配需求,因此这里只是列举我自己写的几个常用的正则表达式,欢迎大家留言讨论。
说明: 下面只是一些简单的匹配规则,实际情况中需要我们根据具体情况再这些正则表达式的首部和尾部加上相应的边界符,如:^, $, \A, \Z, \b, \B等
匹配一个网络地址(URL)
在这里插入图片描述
需要说明的是,网络地址不一定是一个网页地址(http或https链接),还可能是ftp地址等。如果我们要匹配特定协议的网络地址,如http或http链接可以这样写:
在这里插入图片描述
匹配一个IP地址
最简单的写法:
在这里插入图片描述
严谨一点的写法:
在这里插入图片描述

在这里插入图片描述
匹配一个邮箱地址
最简单的写法:
在这里插入图片描述
严谨一点的写法(保证只出现一个@符):
在这里插入图片描述
如果要非常严谨的话,就要区分不同的邮箱了,因为网易(126邮箱,163邮箱)、qq邮箱、hotmail邮箱以及gmail邮箱对邮箱名称中可以包含的字符都有不同的要求。
匹配网易邮箱:6-18个字符,只能包含字母、数字和下划线,且只能以字母开头
在这里插入图片描述
匹配qq邮箱:3-18个字符,只能包含字母、数字、点、减号和下划线
在这里插入图片描述
如果要多个邮箱的严谨匹配用一个正则表达式来匹配,比如要匹配网易邮箱和qq邮箱可以这样写:
在这里插入图片描述
当然,也可以分别匹配多个正则表达式,再通过程序逻辑来得到最后的结果
匹配密码是否合法:
要求比较简单的情况,比如只要求为非空字符且限定密码长度为6-18位
在这里插入图片描述
要求比较复杂的情况,比如必须同时包含含数字、大小字母、小写字母和标点符号,这就需要用到前面所说的正则表达式的特殊构造了(?=…), (?!=…)
在这里插入图片描述
如果要求必须同时包含且只能包含数字、大小字母、小写字母和标点符号,可以这样写:
在这里插入图片描述
匹配大陆身份证号码(15位或18位)
在这里插入图片描述

匹配日期(年-月-日)
在这里插入图片描述
24小时制时间(小时:分钟:秒)
在这里插入图片描述
其他常用正则表达式

在这里插入图片描述
再次说明,实际情况中需要我们根据具体情况再这些正则表达式的首部和尾部加上相应的边界符,如:^, $, \A, \Z, \b, \B等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值