正则表达式引擎的内部工作机制是什么呢?我们有的时候会碰到当使用正则表达式的时候很多的结果并不是我们想要的,那么其原因是什么呢?那么这里就会给你一个答案:
了解正则表达式引擎的必要性:
知道正则表达式引擎是如何工作的有助于你很快理解为何某个正则表达式不像你期望的那样工作。
正则表达式引擎的种类:
有两种类型的引擎:文本导向(text-directed)的引擎和正则导向(regex-directed)的引擎。Jeffrey Friedl把他们称作DFA和NFA引擎。本文谈到的是正则导向的引擎。这是因为一些非常有用的特性,如“惰性”量词(lazy quantifiers)和反向引用(backreferences),只能在正则导向的引擎中实现。所以毫不意外这种引擎是目前***的引擎。
你可以轻易分辨出所使用的引擎是文本导向还是正则导向。如果反向引用或“惰性”量词被实现,则可以肯定你使用的引擎是正则导向的。你可以作如下测试:将正则表达式<
正则表达式引擎的小小总结:
正则导向的引擎总是返回最左边的匹配,这是需要你理解的很重要的一点:即使以后有可能发现一个“更好”的匹配,正则导向的引擎也总是返回最左边的匹配。
当把<
正则表达式引擎的相关内容就向你介绍到这里,希望你对正则表达式引擎有所了解。
【编辑推荐】
标题名称:正则表达式引擎浅析
网页URL:http://www.csdahua.cn/qtweb/news22/315422.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网