温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

正则表达式的模式有哪些

发布时间:2021-12-29 17:13:41 来源:亿速云 阅读:209 作者:小新 栏目:云计算

这篇文章主要介绍了正则表达式的模式有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

正则表达式三种模式:贪婪模式、懒惰模式、独占模式。

最后大家总结出了一个表格,如下所示:

正则表达式的模式有哪些

根据这个表格,我们就能够判断出你写的正则表达式效率到底高不高。这样一来贪婪模式、懒惰模式、独占模式就非常的好判断了。

另外,通过官方文档对比我们可以看出规律:

  • 贪婪模式即在X字符后面增加限定符号如:?、*、+、{n}、{n,}、{n,m}

  • 懒惰模式是在带有限定符号:?、*、+、{n}、{n,}、{n,m}的后面,增加”?”,如:X??

  • 独占模式也叫侵占模式,是在带有限定符号:?、*、+、{n}、{n,}、{n,m}的后面,增加”+”,如:X?+

下面看一个贪婪模式的例子:

正则表达式的模式有哪些

Reluctant 懒惰模式,demo 如下:

正则表达式的模式有哪些

Possessive 独占模式。

正则表达式的模式有哪些

3个模式的代码虽然很简单,但是,群里又有“懒货“提出了新要求了。能不能写一个工具来分析。这样我就不用死记硬背了。

正则表达式的模式有哪些

这个想法很好。而且,根据我们上面的表格,你都可以自己手动写一个正则回溯分析工具了。原理很简单,你就对正则表达式判断是否独占、懒惰、贪婪的特征。如果存在其中的一个特征,就是这个特征的所在的模式了。

根据这个思路,我相信你是可以写出这样的程序的。当然,如果不会也没关系。我给你推荐一个工具,regexbuddy。这个工具长的是下面这样:

正则表达式的模式有哪些

该工具支持多种程序语言正则表达式,如:perl,pcre,javascript,python,ruby,c#,java等等,还能自动生成程序代码,并且内部带有大量的常用正则表达式。

正则表达式的模式有哪些

用起来很简单,也很爽,一直用一直爽!

正则表达式的模式有哪些

感谢你能够认真阅读完这篇文章,希望小编分享的“正则表达式的模式有哪些”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI