再见正则表达式!这次彻底告别手写!

这篇文章的目的是让你能得到完美的正则表达式,而且还不用自己拼。

说到正则表达式,一直是令我头疼的问题,这家伙一般时候用不到,等用到的时候发现它的规则是一点儿也记不住,\d表示一个数字,\s表示包括下划线在内的任意单词字符,也就是 [A-Za-z0-9_],还有[\s\S]*可以匹配包括换行在内的任意字符串。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

这你都能记住吗,如果能的话,那真的佩服,反正我是记不住,之前每次手写的时候都得跟查字典似的一个个的查,简单的还好,复杂的就很痛苦了。

编辑

添加图片注释,不超过 140 字(可选)

过程往往是这个样子的:

1、 先打开 Google,搜索一篇正则表达式,找到一份像上图那样的字典教程,先看个几分钟,回忆回忆,还有可能回忆不起来。

2、然后就开始根据需求写一个正则表达式。

3、放到程序中执行一下。

4、诶,怎么不好用,匹配不上啊,接着修改正则。

5、继续从 3 - 4 的循环,直到运气来了,正常出结果了。

这是最早的时候,真的是全靠那点仅有的实力和运气了。

记得刚毕业不久的时候,有一次领导给安排一个任务,要在一堆 PDF 文件里把我们需要的数据摘出来。PDF 这玩意儿吧,你把它的内容读出来,它就是一大段文本,要在这一堆内容不一致的文件中准确的拿到数据,第一反应就是用正则。

当时的做法就是上面的 1-5这几步来的,加上当时候刚毕业比较菜,跌跌撞撞才把程序写好,中间有几次调试的时候,程序一跑起来,VS(Visual Studio)就特别卡。对的,就是宇宙第一强大的 IDE ,当时我还在写 C#,纵然是宇宙第一强大,也被我弄的特别卡。

当时只道是正则写的有问题,然后就一直改。

后来才知道,那是因为正则写的不合理,发生了回溯现象,越不合理,回溯越严重,加上当时的 PDF 内容很多,所以导致开发工具都卡了,这要是整到线上,那怕是混不下去了。

关于回溯的问题,可以参考下面这篇文章《失控的正则表达式:灾难性的回溯》

https://www.regular-expressions.info/catastrophic.html

编辑切换为居中

添加图片注释,不超过 140 字(可选)

后来就不至于那么菜了,知道了一些关于正则表达式的在线网站,上面有一些常用的正则表达式,不用自己捣鼓了,能偷懒当然要偷懒了。可以在 Goolge 上搜索关键词「正则表达式 在线」,然后就会出来一大堆,直接在上面用那些常用的正则,例如手机号、邮箱、网址啊,基本上能解决90%的需求场景。

另外的10%呢,以前可能只能自己琢磨了,现在都2023年了,基本上99%的概率都不用亲自动手了,当然了,如果是大佬呢,就想自己写,那完全没问题。

ChatGPT 完美解决

ChatGPT 是LLM(大语言模型)的产品,最最擅长的事情就是分析语言,而正则表达式的应用场景是什么呢,其实就是在一大堆文本语言中按照我们的规则,找到我们需要的内容,总的来说,也是对于文本语言的处理,所以用 ChatGPT 解决正则表达式的问题简直太合适不过了。

比如最简单的,匹配中国的手机号,直接让 ChatGPT 把正则写出来,而且连代码都给你写好了。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

至于网址、邮箱等等也不在话下了。

不仅ChatGPT 可以,连百度文心一言也可以。百度文心一言虽然这样可以,但是如果你反过来问它,它就蒙圈了。

比如我问 aaa@126.com 是不是一个合法的邮箱,ChatGPT 会告诉你这个邮箱是合法的,但是百度文心一言就不行了。

下面这个是 ChatGPT 的回答:

编辑切换为居中

添加图片注释,不超过 140 字(可选)

ChatGPT 的回答

下面这个是百度文心一言的回答:

编辑切换为居中

添加图片注释,不超过 140 字(可选)

文心一言的回答

不仅邮箱不行,你问它一个手机号是否合法,百度文心一言也不行,还会告诉你这个号码的归属地,但是这个归属地也是错误的。

这样就看出来什么是智能,什么是大数据了,明显 ChatGPT 更智能一点,希望国产的大模型能在这两年追上吧。

再举一个例子

匹配一段 HTML 中的某个部分也是正则的常用场景,做过爬虫的或多或少都用过正则吧。

比如我在一大段 HTML 中有这么一部分

 
 

<div class="time">这是一个,this is some</div>

现在要拿到这个 div 中的内容部分,当然有很多其他的方式了,比如 Java 版的 jsoup,使用 xpath、css selector 等都可以,但是如果就要用正则呢,是不是自己写的话,一般菜鸟就感觉很麻烦了。

这时候我们问问 ChatGTP ,看看它怎么搞的。

直接就这么问了:

★ <div> <div class="outer"> <div class="time">这是一个,this is some</div> <div class="button">button</div> </div> </div>, 用 Java 正则表达式匹配这段 HTML 中 class="time" 的这个标签的 Text 部分 ”

编辑切换为居中

添加图片注释,不超过 140 字(可选)

直接拿过代码跑一下,没有任何问题。

有同学说了,这么明显的标签,还用的着 ChatGPT ,直接拿过来就写了。

这里只是举个例子,如果哪位有比较复杂的匹配逻辑,也可以用ChatGPT 来试试,基本上99%都能直接解决。

还有一个网站很厉害

如果你没有办法或者不想用 ChatGPT ,也不想用百度文心一言这些,我还发现一个网站,这个网站我严重怀疑它已经接入了 ChatGPT ,它也支持通过自然语言描述,就能给出相应的正则表达式。

网站地址: https://wangwl.net/static/projects/visualRegex

比如我跟他说:提取一段字符串中的中国手机号码部分,而且还有正则可视化。

编辑切换为居中

添加图片注释,不超过 140 字(可选)

上面的那个匹配 HTML 的例子,我也在这个网站上试过,结果也是可以的。

纯粹的好东西分享,我跟这个网站没有任何关系。

一个帮你分析正则的网站

接下来这个网站呢,如果你想对正则有比较深入的理解,或者想看看自己写好的正则或ChatGPT 帮你生成的正则表达式效果怎么样,性能好不好,都可以在这个网站进行。

网站地址:https://regex101.com/

编辑切换为居中

添加图片注释,不超过 140 字(可选)

网站左侧可以选择你的目标语言,也就是你的代码实现是哪种语言 Java 还是 JavaScript 等。

中间上方是正则表达式,中间下方是待匹配的内容。

右侧上方是你写的正则对待匹配内容完整的匹配分析过程,非常详细,可以通过这里清楚的看出这个正则匹配的时候经过了哪些路径。

右侧下方是最终的匹配结果。

如果你写的正则在工作的时候发生了明显的回溯,这里也会给出提示,告诉你问题,让你去优化。

总结

君子善假于物也,虽然我很菜,但是工具好用啊,我+好用的工具,等于我也很厉害了。

资源获取:
大家 点赞、收藏、关注、评论啦 、 查看👇🏻👇🏻👇🏻 微信公众号获取联系方式👇🏻👇🏻👇🏻
精彩专栏推荐订阅:下方专栏👇🏻👇🏻👇🏻👇🏻
每天学四小时:Java+Spring+JVM+分布式高并发,架构师指日可待

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/69774.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

软银成功收购波士顿动力,收获顶尖的机器人技术

波士顿动力&#xff08;Boston Dynamics&#xff09;在机器人领域里属于顶尖的研发公司&#xff0c;而这家在行业内取得了巨大成功的公司&#xff0c;却被Alphabet(谷歌母公司)整体出售给日本软银&#xff0c;并且与Boston Dynamics一起被出售的是日本本土的一家机器人公司Scha…

深度学习经典入门项目—波士顿房价预测

目录 房价预测--线性回归数据处理数据形状变换数据集划分数据归一化处理housing.data数据格式 模型设计线性回归模型设计 训练配置训练过程保存并测试模型保存模型测试模型 房价预测–线性回归 波士顿房价预测数据集是经典的机器学习、深度学习入门的数据集。下面我们用这个数…

本周AI热点回顾:波士顿动力机器狗去新西兰放羊了、微软WSL将支持GPU、ERNIE-GEN刷新SOTA

01 波士顿动力机器狗去新西兰放羊了&#xff01;网友&#xff1a;不努力连狗都不如 波士顿动力的科学家可能做梦也没想到&#xff0c;他们研制出来的Spot机械狗&#xff0c;刚刚商用&#xff0c;就被训练来放羊了。 新西兰&#xff0c;一个因为牛奶和羊毛被中国人熟知的国家&am…

机器学习项目实践——波士顿房价预测

基于线性回归预测波士顿房价 摘要&#xff1a;分类和回归属于机器学习领域有监督学习算法的两种方法&#xff0c;有监督学习是通过已有的训练样本去训练得到一个模型&#xff0c;再使用这个模型将所有的输入映射到相应的输出&#xff0c;若输出结果是离散型称为分类&#xff0…

起底网红机器人波士顿动力

关注网易智能&#xff0c;聚焦AI大事件&#xff0c;读懂下一个大时代&#xff01; 这家“网红”机器人公司又火了。 最近&#xff0c;接连发布的两条波士顿动力机器人的最新视频让不少人感到惊讶&#xff0c;一段是发布于今年10月11日标题为“跑酷阿特拉斯”的视频&#xff0c;…

重磅干货!揭秘波士顿动力背后的专利技术

【导读】本文从波士顿动力背后申请的专利入手,从动力系统、步态分析,详细探讨了波士顿动力机器人背后的技术实现。 波士顿动力四足机器人的发展历程(前世今身) 相比于轮式或履带机器人,波士顿足式机器人具有更强的地形适应能力,身体十分灵活,可以在各种崎岖不平的地面行…

机器学习实战演练 波士顿房价预测与模型评估

介绍数据集&#xff1a; 本数据集共有506个样本&#xff0c;每个样本有13个特征及标签MEDV 特征信息&#xff1a; CRIM 城镇人均犯罪率 ZN 占地面积超过2.5万平方英尺的住宅用地比例 INDUS 城镇非零售业务地区的比例 CHAS 查尔斯河虚拟变量 ( 1 如果土地在河边&#xff1b;否则…

这就是波士顿动力第一款商用产品「机器狗」Spot

波士顿动力 CEO Marc Raibert 告诉《The Verge》称&#xff0c;最近 Spot 正在大量的「概念验证」环境下接受测试&#xff0c;包括包裹递送和监控作业。他表示&#xff0c;尽管商用版 Spot 没有具体的上线日期&#xff0c;但应该会在几个月内与公众见面&#xff0c;并且年底前肯…

波士顿动力9.21亿美元被卖,地主家也养不起网红机器狗

据韩国经济日报消息&#xff0c;消息人士透露在今天上午的董事会上&#xff0c;韩国现代集团确认将以不到一万亿韩元&#xff08;约9.21亿美元&#xff09;收购波士顿动力。 消息人士称&#xff0c;为完成波士顿动力收购&#xff0c;现代汽车已聘请高盛&#xff08;Goldman Sa…

科普分享 | 波士顿动力机器人进化史

我想很多人都看过美国科幻电影系列《终结者》&#xff0c;著名电影杂志《电影周刊》在评选20世纪最值得收藏的一部电影时&#xff0c;此片以最高票数位居第一。科幻是现实对历史的镜像&#xff0c;机器人领域最让人津津乐道的莫过于波士顿动力公司了。 图1 《终结者》剧照 波士…

人工智能与大数据—线性回归之波士顿房价预测

一&#xff0c;首先导入必要的包 1&#xff0c;paddle.fluid--->PaddlePaddle深度学习框架 2&#xff0c;numpy---------->python基本库&#xff0c;用于科学计算 3&#xff0c;os------------------>python的模块&#xff0c;可使用该模块对操作系统进行操作 4&a…

波斯顿动力机器人为啥那么牛逼?

关注星标公众号&#xff0c;不错过精彩内容 作者 | strongerHuang 微信公众号 | 嵌入式专栏 原文&#xff1a;1980 - 2022年&#xff0c;波斯顿动力发展历程、机器人产品分类汇总。 视频&#xff1a;位于我的视频号『strongerHuang』中视频专辑《斯顿动力机器人》&#xff08;第…

思考累了,看看故事:波士顿动力公司大狗系列--SpotMini

2016年6月23日&#xff0c;Boston Dynamics在YouTube发布了他们新一款的机器人SpotMini&#xff0c;截止26日&#xff0c;网上已经有超过200万人观看过这段视频&#xff0c;再加上国内视频的转发&#xff0c;观看量可想而知。这个热门程度有不禁让人想起来今年年初新一代Atlas发…

波士顿动力机器狗在工厂打工的实录火了

博雯 发自 凹非寺量子位 报道 | 公众号 QbitAI 实验室里的波士顿动力狗&#xff0c;跳舞跑酷后空翻&#xff0c;堪称狗界网红&#xff0c;机器界顶流&#xff1a; 但如果出了实验室&#xff0c;开始正经找个厂上班呢&#xff1f; 机器狗的生活就变成了现在这样&#xff1a; 迈着…

开源教程 | 树莓派 DIY 波士顿动力机器狗,立省 53 万 RMB

国外小哥 Michael Romanko 利用树莓派3B&#xff0c;伺服电机&#xff0c;液晶显示器&#xff0c;锂电池&#xff0c;PCA9695控制板打造了一只波士顿动力机器狗&#xff0c;成本不到4000元。 通过三轴身体姿态控制&#xff0c;这样一只树莓派版波士顿动力狗&#xff0c;可以实现…

波士顿动力真的无可企及吗?一步步剖析四足机器人技术(一)

四足机器人运动控制 第一章 序第二章 运动状态姿态控制运动控制 第三章 步态第四章 CPG控制网络介绍CPG模型分类基于HOPF振荡器的CPG单元模型CPG网络控制模型 Tips参考文献 大家可以先看看效果 [四足机器人]开环运动控制测试 第一章 序 足式机器人较传统的四轮式和履带式有着…

自己动手做个DIY波士顿机器狗

我想来整个DIY波士顿机器狗。 中文的介绍: https://www.qbitai.com/2020/08/17572.html 软件安装: https://github.com/mike4192/spotMicro 硬件制作: https://www.thingiverse.com/thing:3445283 中文介绍是这样的: 用树莓派DIY波士顿机器狗,帮你省下50万:教程开…

波士顿仿生机械狗 原理分析

导语&#xff1a;Boston Dynamics 在机器人动力方面堪称翘楚&#xff0c;其由双足或多足机器人组成的机器人天团总是时不时能给我们带来惊喜。上周&#xff0c;Boston Dynamics 又发布了一段视频&#xff0c;并再次推出了一款全新机器人——Handle&#xff0c;这也是Boston Dyn…

数据可视化分析报告这样做,大家都轻松

在BI数据可视化工具上这样做分析报告&#xff0c;智能分析、可视化呈现&#xff0c;拖拉拽点击就能快速完成一份数据可视化分析报告。不仅做分析报告的人轻松了&#xff0c;看报表的也轻松了&#xff0c;毕竟除了能够一眼看懂分析报告&#xff0c;更能够随时随地根据实际需求去…

数据分析-01数据分析之数据可视化(转)

声明&#xff1a;数据分析01-08均来自尚学堂学习内容&#xff0c;文档仅供学习交流使用&#xff0c;已上传github 一、数据分析介绍 什么是数据分析&#xff1a; 百度百科&#xff1a;数据分析是指用适当的统计分析方法对收集来的大量数据进行分析&#xff0c;提取有用信息和…