亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標(biāo)題: 正則表達(dá)式 --PHP [打印本頁]

作者: coolias    時間: 2009-07-14 16:15
標(biāo)題: 正則表達(dá)式 --PHP

                                                                   最近一直在做審計郵件、帖子的工作,所以得首先學(xué)會正則。雖說網(wǎng)上對正則表達(dá)式解釋的已經(jīng)夠詳盡的了, 但是把網(wǎng)上的試子照搬到php中,還是有一些惹人厭的問題:
譬如在
正則表達(dá)式30分鐘入門教程
中有個這樣的式子(?).*(?=)用于匹配不包含屬性的簡單HTML標(biāo)簽內(nèi)里的內(nèi)容,按道理來說直接在preg_match中運用應(yīng)該沒什么問題,可實際呢:
$str = "aaaaaabbbbbbcccccccddddddfffff";
preg_match("/(?).*(?=)/s", $str, $matches);
var_dump($matches);
結(jié)果報錯:
Warning: preg_match(): Compilation failed: lookbehind assertion is not fixed length at offset 11...于是把\w+直接寫成font:
preg_match("/(?).*(?=)/s", $str, $matches);
YYD,結(jié)果盡然為空,這個問題困擾了我好久,瞎貓碰死耗子,將\1無名組換成有名組盡然成了:
preg_match("/(?font)>).*(?=)/s", $str, $matches);
終于成功了,但是那些失敗的例子都在正則的
測試工具
里試過了,不知道為什么...
下面舉幾個經(jīng)典正則的小例子:
  • \b((?!abc)\w)+\b , 匹配不包含連續(xù)字符串a(chǎn)bc的單詞,對于字符串"asdf abcaa abcbb abab", 它會取出asdf 和 abab。
  • ((?!).|(?R))* 遞歸匹配,給出上面的字符串a(chǎn)aaaaabbbbbbcccccccddddddfffff,其會從中引出兩組:0組,aaaaaabbbbbbcccccccdddddd 1組,dddddd。其它的以后再寫。
    給出幾其他人的好文章:
    C#基礎(chǔ)回顧:正則表達(dá)式
    正則表達(dá)式30分鐘入門教程
    正則表達(dá)式高級技巧背后的關(guān)鍵概念
    表達(dá)式的遞歸匹配
    遞歸深度匹配 正則表達(dá)式
                   
                   
                   
                   
                   
                   
                   
                   

    本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u1/54338/showart_1995965.html




    歡迎光臨 Chinaunix (http://72891.cn/) Powered by Discuz! X3.2
        <pre id="k5wzw"><strike id="k5wzw"></strike></pre>