成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

正則表達式引擎淺析

開發(fā) 后端
了解正則表達式引擎的是我們基本的要求,只有掌握了正則表達式引擎的原理,那么我們才能做好正則表達式的使用,本文就向你介紹相關(guān)的內(nèi)容。

正則表達式引擎的內(nèi)部工作機制是什么呢?我們有的時候會碰到當(dāng)使用正則表達式的時候很多的結(jié)果并不是我們想要的,那么其原因是什么呢?那么這里就會給你一個答案:

了解正則表達式引擎的必要性:

知道正則表達式引擎是如何工作的有助于你很快理解為何某個正則表達式不像你期望的那樣工作。

正則表達式引擎的種類:

有兩種類型的引擎:文本導(dǎo)向(text-directed)的引擎和正則導(dǎo)向(regex-directed)的引擎。Jeffrey Friedl把他們稱作DFA和NFA引擎。本文談到的是正則導(dǎo)向的引擎。這是因為一些非常有用的特性,如“惰性”量詞(lazy quantifiers)和反向引用(backreferences),只能在正則導(dǎo)向的引擎中實現(xiàn)。所以毫不意外這種引擎是目前***的引擎。

你可以輕易分辨出所使用的引擎是文本導(dǎo)向還是正則導(dǎo)向。如果反向引用或“惰性”量詞被實現(xiàn),則可以肯定你使用的引擎是正則導(dǎo)向的。你可以作如下測試:將正則表達式<<regex|regex not>>應(yīng)用到字符串“regex not”。如果匹配的結(jié)果是regex,則引擎是正則導(dǎo)向的。如果結(jié)果是regex not,則是文本導(dǎo)向的。因為正則導(dǎo)向的引擎是“猴急”的,它會很急切的進行表功,報告它找到的***個匹配 。

正則表達式引擎的小小總結(jié):

正則導(dǎo)向的引擎總是返回最左邊的匹配,這是需要你理解的很重要的一點:即使以后有可能發(fā)現(xiàn)一個“更好”的匹配,正則導(dǎo)向的引擎也總是返回最左邊的匹配。

當(dāng)把<<cat>>應(yīng)用到“He captured a catfish for his cat”,引擎先比較<<c>>和“H”,結(jié)果失敗了。于是引擎再比較<<c>>和“e”,也失敗了。直到第四個字符,<<c>>匹配了“c”。<<a>>匹配了第五個字符。到第六個字符<<t>>沒能匹配“p”,也失敗了。引擎再繼續(xù)從第五個字符重新檢查匹配性。直到第十五個字符開始,<<cat>>匹配上了“catfish”中的“cat”,正則表達式引擎急切的返回***個匹配的結(jié)果,而不會再繼續(xù)查找是否有其他更好的匹配。

正則表達式引擎的相關(guān)內(nèi)容就向你介紹到這里,希望你對正則表達式引擎有所了解。

【編輯推薦】

  1. 淺析PHP正則表達式的應(yīng)用實例
  2. 正則表達式匹配實例詳解
  3. 正則表達式匹配數(shù)字實例解析
  4. 正則表達式匹配字符串實現(xiàn)詳解
  5. 正則表達式入門必學(xué)的星星點點
責(zé)任編輯:仲衡 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-07-19 10:40:16

Perl正則表達式

2009-08-07 15:16:10

C#正則表達式

2009-08-20 16:13:32

C#正則表達式匹配

2009-09-16 11:17:12

PHP正則表達式定位字

2009-09-16 15:45:56

email的正則表達式

2009-08-20 15:02:41

C#正則表達式

2009-08-20 15:10:33

C#正則表達式

2009-08-20 15:06:51

C#正則表達式

2009-08-20 14:57:00

C#正則表達式

2009-09-16 13:24:30

PHP正則表達式匹配

2009-09-16 16:01:57

PHP正則表達式正則表達式的應(yīng)用

2009-09-16 18:03:05

Java正則表達式正則表達式實現(xiàn)

2009-08-20 14:43:03

C#正則表達式Rege

2009-09-16 10:43:22

PHP正則表達式函數(shù)

2009-08-20 13:09:28

C#正則表達式

2009-08-13 15:02:52

C#正則表達式引擎貪婪

2009-09-16 13:53:17

PHP正則表達式匹配

2009-08-20 13:57:27

C#正則表達式

2009-09-16 12:41:42

Perl正則表達式

2020-09-04 09:16:04

Python正則表達式虛擬機
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 免费一区 | 午夜在线电影网 | 国产一区二区在线免费观看 | 精品国产31久久久久久 | 久久91精品国产一区二区三区 | 99精品在线 | 精品视频久久久久久 | 久久91精品国产一区二区 | 国产精品欧美一区二区三区 | 国产一区二区三区四区在线观看 | av黄色片在线观看 | av高清| 国产精品一区二区欧美 | 国产在线一区二区三区 | 国产在线精品一区二区三区 | 伊人网一区 | 国产精品视频播放 | 久久久精彩视频 | 国产区在线观看 | 久久精品小视频 | 久久亚洲一区二区三区四区 | 亚洲国产成人精品久久久国产成人一区 | www.精品国产 | 精品乱码久久久久 | 成人精品一区二区 | 一区二区在线免费观看 | 罗宾被扒开腿做同人网站 | 天天碰日日操 | 黑人精品欧美一区二区蜜桃 | av中文字幕在线观看 | 国产欧美视频一区二区 | 成年人在线视频 | 天天澡天天狠天天天做 | 国产一级在线 | 91观看 | 在线91| 青青草亚洲 | 理论片免费在线观看 | 久久99深爱久久99精品 | 久久久久久国产 | 欧美精品欧美精品系列 |