<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ## 4-2. 元字符 >[info] 元字符是修飾原子字符的,可以理解為原子的定語或限定條件 * 舉個生活中的小例子:戴帽子的男生 * 其中【戴帽子的】就是【元字符】; * 那個【男生】,就是【原子】。 * * * * * * 注意二點: 1. 元字符不允許單獨使用,必須配合原子,共同工作; 2. 如果原子中包括元字符,必須在元字符加`'\'`進行轉義。 * * * * * ### 元字符種類(共15個) >[info] 元字符盡管看上去很多,其實不少是成對出現,不難記憶,別被嚇住了~ | 序號 | 元字符 | 說明 |舉例| | :---: | :---: | --- |--- | | 1 | * | 匹配0次、1次或多次前面原子,等價于`{0,} ` | `'/Go*gle/' ` | | 2 | + | 匹配1次或多次前面原子,等價于`{1,} ` | `'/Go+gle/' ` | | 3 | ? | 匹配0次或1次前面原子,等價于`{0,1}` | `'/Go?gle/' ` | | 4 | . | 匹配除換行符之外的任意一個字符 | `'/Go.gle/' ` | | 5 | \| | 匹配2個或多個分支 | `/Google\|Baidu/` | | 6 | {n} | 表示前面原子出現n次 | `/Go{2}gle/` | | 7 | {n,} | 表示前面原子出現不少于n次 | `/Go{2,}gle/` | | 8 | {n,m} | 表示前面原子至少出現n次,最多出現m次 | `/Go{2,5}gle/` | | 9 | ^ | 匹配字符串開始位置 | `/^php/` | | 10 | $ | 匹配字符串開始位置 | `/php$/` | | 11 | \b | 匹配單詞邊界 | `/\bphp/` | | 12 | \B | 匹配除單詞邊界以外的部分 | `/\Bphp/` | |13 | [ ] | 匹配方括號內指定的任意一個原子 | `/[aj]sp/` | | 14 | [^ ] | 匹配除方括號內指定原子以外的任意一個原子 |`/[^aj]sp/` | | 15 | ( ) | 匹配其整體為一個原子[模式單元],即多個原子組成的大原子 | `/(Think)+PHP/` | * * * * * ### 模式匹配優先級問題: | 優先級 | 元字符 | 描述 | | :---: | :---: | --- | | 1 | \ | 轉義字符 | | 2 | ( ),(?:),(?=),[ ] | 模式單元與原子表 | | 3 | *,+,?,{n},{n,},{n,m} | 重復匹配 | | 4 | ^,$,\b,\B | 邊界匹配 | | 5 | \| | 模式選擇 | * * * * * ### 實例演示: >[info] 代碼說明,都寫在注釋中了 ~~~ <?php //*匹配前面0次,1次或多次前面原子 echo preg_match('/Go*gle/', 'Ggle') ? '匹配成功<br />' : '匹配失敗<br />'; //?匹配0個或1個原子 echo preg_match('/Go?gle/', 'Gogle') ? '匹配成功<br />' : '匹配失敗<br />'; //+匹配1個或多個原子 echo preg_match('/Go+gle/', 'Google') ? '匹配成功<br />' : '匹配失敗<br />'; //.匹配G和g之間的任意一個字符 echo preg_match('/G.g/', 'Gogle') ? '匹配成功<br />' : '匹配失敗<br />'; // | 匹配多個分支 echo preg_match('/google|baidu/', 'baidu') ? '匹配成功<br />' : '匹配失敗<br />'; //^設置開頭$設置結尾,精確匹配 echo preg_match('/^google$/', 'google') ? '匹配成功<br />' : '匹配失敗<br />'; //{n} n表示前面原子出現的次數 echo preg_match('/go{2}gle/', 'google') ? '匹配成功<br />' : '匹配失敗<br />'; //{n,} n表示前面原子至少要出現的次數,本例中,字符’o‘至少要出現2次 echo preg_match('/go{2,}gle/', 'gooogle') ? '匹配成功<br />' : '匹配失敗<br />'; //{n,m} n表示前面原子至少要出現的次數,m表示最多出現次數,本例中,字符’o‘至少要出現2次,最多5次 echo preg_match('/go{2,5}gle/', 'gooooogle') ? '匹配成功<br />' : '匹配失敗<br />'; // \b匹配單詞邊界,本例 ThinkPHP右邊為邊界不應再有內容 echo preg_match('/PHP\b/', 'ThinkPHP 5.0') ? '匹配成功<br />' : '匹配失敗<br />'; // \B匹配除單詞邊界以外部分,本例 Think PHP右邊不能有邊界,左邊必須要有邊界 echo preg_match('/\bPHP\B/', 'Think PHP5.0') ? '匹配成功<br />' : '匹配失敗<br />'; ~~~ * * * * * ### 總結: >[success] 元字符是正規表達式中的一個重點,也是難點,大家多上機練習一下。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看