亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何理解php的正則表達式

發布時間:2021-10-18 09:57:00 來源:億速云 閱讀:131 作者:柒染 欄目:數據庫

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

1、通用原子:

    \d : 數字。 \D : 除了數字。

    \w : 數字,字母,下劃線。\W : 除了數字,字母,下劃線。

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

    2、元字符:

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

      * : 匹配前面的內容出現 0 次及以上。

      ? :匹配前面的內容出現 0 次或 1 次

      + : 出現一次或多次。

      ^ : 必須以它開頭。

      $ : 必須以它結尾。

      {n} : 恰巧出現 n 次。

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

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

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

      () : 后項引用或者是當做一個整體。

      [^]:取反。

      | : 或者

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

      3、模式修正符

        i:不區分大小寫

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

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

        s: 修正 "." 的換行。

        U: 取消貪婪模式

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

        A: 必須以這個模式開頭。

        D: 修正 "$" 對 "\n" 的忽略。

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

        g:該表達式可以進行全局匹配。

        示例:

        現在需要正則驗證一個input框,我想輸入的是非整數就自動變成空值。

        正則如下;

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

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

        二、后項引用

        如果想只去除掉b標簽,只保留里面的字符串,這里就需要用到后項引用。怎么樣后項引用呢,就是將.* 括起來,然后在匹配的時候,寫上\1,\1 代表第一個括號里面匹配到的內容,當然為了防止 \ 將 1 轉義掉,所以我們使用\\1 .

        三、貪婪模式

        我們這是想匹配到每一個 b 標簽,即<b>abc</b><b>bcd</b>,

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

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

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

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

        四、延伸重點

        1、常見PCRE函數

        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、寫正則表達式的思路

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

陈巴尔虎旗| 阳朔县| 通许县| 措勤县| 沙河市| 保亭| 鸡泽县| 旺苍县| 莱西市| 和平区| 潜江市| 合水县| 青田县| 仁寿县| 城固县| 卓资县| 西乌珠穆沁旗| 静乐县| 界首市| 若尔盖县| 康保县| 松江区| 上饶市| 武鸣县| 开阳县| 来宾市| 泌阳县| 饶平县| 温州市| 大同县| 普兰县| 迁西县| 乌鲁木齐市| 武强县| 正安县| 盱眙县| 扎囊县| 茌平县| 泾阳县| 通山县| 巴塘县|