首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >快速学习正则表达式,不用死记硬背,这里有份中文资源和互动学习网站

快速学习正则表达式,不用死记硬背,这里有份中文资源和互动学习网站

作者头像
量子位
发布2019-08-12 15:48:52
3890
发布2019-08-12 15:48:52
举报
文章被收录于专栏:量子位量子位
晓查 发自 凹非寺 量子位 出品 | 公众号 QbitAI

无论你使用的是Python、Java、Perl还是Shell,正则表达式是学习主流编程语言几乎绕不开的话题。有了它,就能帮你快速定位到符合筛选条件的文本内容。

但对于初学者来说,有两座摆在面前的“大山”:

一是正则表达式包含的符号种类非常多,如果只是死记硬背,学习起来会非常痛苦; 二是单独介绍正则表达式的中文图书资源非常少,而且存在介绍混乱的问题,不利于系统学习。

现在GitHub上的有个2万星的项目learn-regex解决了初学者的困难。最近这个教程刚完成了汉化工作,还附有在线练习,帮助初学者快速入门正则表达式。

什么是正则表达式

正则表达式( Regular expression)是一组由字母和符号组成的特殊文本, 它可以用来从文本中找出满足你想要的格式的句子。

比如我们在网站中看到对用户名规则做出了如下限制:只能包含小写字母、数字、下划线和连字符,并且限制用户名长度在3~15个字符之间,如何验证一个用户名是否符合规则呢 ?我们使用以下正则表达式:

以上的正则表达式可以接受john_doe、jo-hn_doe、john12_as,但不能匹配Jo,因为它包含了大写字母而且长度不到3个字符。

项目内容

learn-regex整个教程分为6节,内容比较简短,很快就能阅读完。

教程从最简单的正则表达式入手,紧接着又介绍了核心内容元字符,然后由简到难介绍正则表达式的各种用法。

在线练习

如果你以为learn-regex只是个简单的汉化教程就大错特错了。learn-regex之所以能获得2万星的高赞,还有个重要原因就是它提供了在线练习,直观地展示了正则表达式的匹配方式。

比如(c|g|p)ar是如何匹配The car is parked in the garage.这句话中的几个单词的:

我们可以直观地看到以c、g、p开头并且紧跟ar的单词都能很正则表达式匹配。网页的右侧还会给出相应的解释:

是不是比枯燥的文字解释要生动很多呢?那你也来试试吧!

传送门

项目地址: https://github.com/ziishaned/learn-regex

在线练习地址: https://regex101.com/

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 量子位 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是正则表达式
  • 项目内容
  • 在线练习
  • 传送门
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档