欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

如何理解php的正則表達(dá)式

如何理解php的正則表達(dá)式,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

創(chuàng)新互聯(lián)主營(yíng)坡頭網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都App制作,坡頭h5微信小程序開發(fā)搭建,坡頭網(wǎng)站營(yíng)銷推廣歡迎坡頭等地區(qū)企業(yè)咨詢

1、通用原子:

    \d : 數(shù)字。 \D : 除了數(shù)字。

    \w : 數(shù)字,字母,下劃線。\W : 除了數(shù)字,字母,下劃線。

    \s : 空白符 。 \S : 除了空白符 。

    2、元字符:

      . :除了換行以外的所有字符

      * : 匹配前面的內(nèi)容出現(xiàn) 0 次及以上。

      ? :匹配前面的內(nèi)容出現(xiàn) 0 次或 1 次。

      + : 出現(xiàn)一次或多次。

      ^ : 必須以它開頭。

      $ : 必須以它結(jié)尾。

      {n} : 恰巧出現(xiàn) n 次。

      {n,} : 大于等于 n 次。

      {n,m} : 大于等于 n, 小于等于 m.

      [] : 是一個(gè)集合,匹配中括號(hào)中的任意一個(gè)字符,如:[abc]即為匹配a或b或者c。

      () : 后項(xiàng)引用或者是當(dāng)做一個(gè)整體。

      [^]:取反。

      | : 或者

      [-] : 代表一個(gè)范圍,如[0-9],匹配即為 0123456789

      3、模式修正符

        i:不區(qū)分大小寫。

        m:將字符串通過分隔符進(jìn)行分割,將字符串中的每一行分別進(jìn)行匹配。

        e: 將匹配出來的內(nèi)容做一些php語法上的處理。

        s: 修正 "." 的換行。

        U: 取消貪婪模式

        x: 忽略模式中的空白符。

        A: 必須以這個(gè)模式開頭。

        D: 修正 "$" 對(duì) "\n" 的忽略。

        u: 做 utf-8 中文匹配的時(shí)候使用。

        g:該表達(dá)式可以進(jìn)行全局匹配。

        示例:

        現(xiàn)在需要正則驗(yàn)證一個(gè)input框,我想輸入的是非整數(shù)就自動(dòng)變成空值。

        正則如下;

        #不加入/g,則只返回第一個(gè)匹配,無論執(zhí)行多少次均是如此,如果加入g,則第一次執(zhí)行也返回第一個(gè)匹配,再執(zhí)行返回第二個(gè)匹配,依次類推。#/[^0-9]/g,這個(gè)正則表達(dá)式的意思是全局匹配非數(shù)字類型和非-的字符。/[^0-9|-]/g

        匹配到該正則后,就將input的值置空即可。

        二、后項(xiàng)引用

        如果想只去除掉b標(biāo)簽,只保留里面的字符串,這里就需要用到后項(xiàng)引用。怎么樣后項(xiàng)引用呢,就是將.* 括起來,然后在匹配的時(shí)候,寫上\1,\1 代表第一個(gè)括號(hào)里面匹配到的內(nèi)容,當(dāng)然為了防止 \ 將 1 轉(zhuǎn)義掉,所以我們使用\\1 .

        三、貪婪模式

        我們這是想匹配到每一個(gè) b 標(biāo)簽,即<b>abc</b><b>bcd</b>,

        //如果使用下面的正則來匹配的話,會(huì)匹配出<b>abc</b><b>bcd</b>.$pattern='/<b>.*<\/b>/';

        所以此處我們要使用.*?來取消貪婪,?代表匹配前面的內(nèi)容 0 次或者 1次。

        //正則表達(dá)式改為$pattern='/<b>.*?</b>/';//當(dāng)然取消貪婪還有一種寫法:就是在后面加上一個(gè)U,即:$pattern='/<b>.*</b>/U';

        但是切記不能 .*? 和 U 一起用。

        四、延伸重點(diǎn)

        1、常見PCRE函數(shù)

        2、中文匹配

        示例:

        $str = '中文';

        a、使用utf-8匹配中文:

        $pattern='/[\x{4e00}-\x{9fa5}]+/u';

        b、使用GB2312匹配中文:

        $pattern='/['.chr(0xb0).'-'.chr(0xf7).']['.chr(0xa1).'-'.chr(0xfe).']/';preg_match($pattern,$str,$match);

        3、寫正則表達(dá)式的思路

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。

本文標(biāo)題:如何理解php的正則表達(dá)式
標(biāo)題路徑:http://chinadenli.net/article6/giodig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、網(wǎng)站制作、網(wǎng)站排名、全網(wǎng)營(yíng)銷推廣、網(wǎng)頁設(shè)計(jì)公司、定制網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)