查看原文
其他

这20个正则表达式,学会的话能让你少写1000行代码

    

点击上方 "程序员小乐" ,关注公众号

8点20分,第一时间与你相约

每日英文

Life is like a cup of tea. It won't be bitter for a lifetime but for a short while anyway.

人生就像一杯茶,不会苦一辈子,但总会苦一阵子。


每日掏心话

人生最可怕的不是眼睛看不见了,而是心失去了方向。幸福就是只要牵对了手,就算失去了方向,你也不会再害怕。


来自:技匠 | 责编:乐乐

链接:jianshu.com/p/e7bb97218946

图片来自网络



  正文   


正则表达式,是一个强大且高效的文本处理工具。通常情况下,通过一段表达准确的表达式,能够非常简短、快速的实现复杂业务逻辑。

因此,正则表达式通常是一个成熟开发人员的标配,可以辅助实现开发效率的极强提升。

在需要实现校验字段、字符串等内容时,通常就可以通过正则表达式实现:

下面是技匠整理的,经常使用到的20个正则表达式。

1校验密码强度


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

2校验中文


字符串仅能是中文。

3由数字、26个英文字母或下划线组成的字符串


4校验E-Mail 地址


同密码一样,下面是E-mail地址合规性的正则检查语句。

5校验身份证号码


下面是身份证号码的正则校验。15 或 18位。

6校验日期


“yyyy-mm-dd“ 格式的日期校验,已考虑平闰年。

7校验金额


金额校验,精确到2位小数。

8校验手机号


下面是国内 13、15、18开头的手机号正则表达式。(可根据目前国内收集号扩展前两位开头号码)

9判断IE的版本


IE目前还没被完全取代,很多页面还是需要做版本兼容,下面是IE版本检查的表达式。

10校验IP-v4地址


IP4 正则语句。

11校验IP-v6地址


IP6 正则语句。

12检查URL的前缀


应用开发中很多时候需要区分请求是HTTPS还是HTTP,通过下面的表达式可以取出一个url的前缀然后再逻辑判断。

13提取URL链接


下面的这个表达式可以筛选出一段文本中的URL。

14文件路径及扩展名校验


验证windows下文件路径和扩展名(下面的例子中为.txt文件)

15提取Color Hex  Codes


有时需要抽取网页中的颜色代码,可以使用下面的表达式。

16提取网页图片


假若你想提取网页中所有图片信息,可以利用下面的表达式。

17提取页面超链接


提取html中的超链接。

18查找CSS属性


通过下面的表达式,可以搜索到相匹配的CSS属性。

19抽取注释


如果你需要移除HMTL中的注释,可以使用如下的表达式。

20匹配HTML标签


通过下面的表达式可以匹配出HTML中的标签属性。


正则表达式的相关语法


下面是我找到的一张非常不错的正则表达式 Cheat Sheet,可以用来快速查找相关语法。



学习正则表达式


我在网上看到了一篇相当不错的正则表达式快速学习指南,有兴趣继续深入学习的同学可以参考。

https://docs.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference


正则表达式在线测试工具


regex101是一个非常不错的正则表达式在线测试工具,你可以直接在线测试你的正则表达式哦。

https://link.jianshu.com/?t=https://regex101.com/#javascript


你掌握这些正则表达式了吗?


欢迎在评论区留下你的观点,一起讨论提高。如果今天的文章让你有新的启发,或者在学习能力的提升上有新的认识,欢迎转发分享给更多人。


欢迎各位读者加入程序员小乐读者群,在公众号后台回复“加群”或者“学习”即可。


猜你还想看


阿里、腾讯、百度、华为、京东最新面试题汇集

面试官问我:一个 TCP 连接可以发多少个 HTTP 请求?我竟然回答不上来...

35 个小细节,让你的Java 代码如鱼得水

这5G不就网速快了点,还能做啥子?

我只是下了个订单,鬼知道我在微服务里经历了什么?

深入理解 Spring 中的各种注解

这里有技术心得算法职场感悟面经,做一个有趣的帮助程序员成长的公众号。

关注「程序员小乐」,收看更多精彩内容

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存