<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>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ### 分組 你經常需要得到比 RE 是否匹配還要多的信息。正則表達式常常用來分析字符串,編寫一個 RE 匹配感興趣的部分并將其分成幾個小組。舉個例子,一個 RFC-822 的頭部用 ":" 隔成一個頭部名和一個值,這就可以通過編寫一個正則表達式匹配整個頭部,用一組匹配頭部名,另一組匹配頭部值的方式來處理。 組是通過 "(" 和 ")" 元字符來標識的。 "(" 和 ")" 有很多在數學表達式中相同的意思;它們一起把在它們里面的表達式組成一組。舉個例子,你可以用重復限制符,象 \*, +,??, 和 {m,n},來重復組里的內容,比如說(ab)\* 將匹配零或更多個重復的 "ab"。 ``` #!python >>> p = re.compile('(ab)*') >>> print p.match('ababababab').span() (0, 10) ``` 組用 "(" 和 ")" 來指定,并且得到它們匹配文本的開始和結尾索引;這就可以通過一個參數用 group()、start()、end() 和 span() 來進行檢索。組是從 0 開始計數的。組 0 總是存在;它就是整個 RE,所以 `MatchObject` 的方法都把組 0 作為它們缺省的參數。稍后我們將看到怎樣表達不能得到它們所匹配文本的 span。 ``` #!python >>> p = re.compile('(a)b') >>> m = p.match('ab') >>> m.group() 'ab' >>> m.group(0) 'ab' ``` 小組是從左向右計數的,從1開始。組可以被嵌套。計數的數值可以通過從左到右計算打開的括號數來確定。 ``` #!python >>> p = re.compile('(a(b)c)d') >>> m = p.match('abcd') >>> m.group(0) 'abcd' >>> m.group(1) 'abc' >>> m.group(2) 'b' ``` group() 可以一次輸入多個組號,在這種情況下它將返回一個包含那些組所對應值的元組。 ``` #!python >>> m.group(2,1,2) ('b', 'abc', 'b') ``` The groups() 方法返回一個包含所有小組字符串的元組,從 1 到 所含的小組號。 ``` #!python >>> m.groups() ('abc', 'b') ``` 模式中的逆向引用允許你指定先前捕獲組的內容,該組也必須在字符串當前位置被找到。舉個例子,如果組 1 的內容能夠在當前位置找到的話,\1 就成功否則失敗。記住 Python 字符串也是用反斜杠加數據來允許字符串中包含任意字符的,所以當在 RE 中使用逆向引用時確保使用 raw 字符串。 例如,下面的 RE 在一個字符串中找到成雙的詞。 ``` #!python >>> p = re.compile(r'(\b\w+)\s+\1') >>> p.search('Paris in the the spring').group() 'the the' ``` 象這樣只是搜索一個字符串的逆向引用并不常見 -- 用這種方式重復數據的文本格式并不多見 -- 但你不久就可以發現它們用在字符串替換上非常有用。
                  <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>

                              哎呀哎呀视频在线观看