如何在 Python 中匹配跨多行的模式?
正則表示式是一組字元,允許您使用搜索模式查詢字串或一組字串。RegEx 是正則表示式的另一個名稱。
Python 中的 re 模組用於處理正則表示式。為了使用正則表示式在 python 中匹配跨多行的模式,我們使用<p>.*</p>正則表示式。
這裡,
<p>,</p>表示 HTML5 中的段落標籤。
表示字元出現零次或多次。
。是一個特殊字元,它匹配所有字元,包括在re.DOTALL標誌的幫助下換行符。
通常,在正則表示式搜尋中,‘.’特殊字元不匹配換行符。為了解決這個問題,‘re’包提供了一些預定義的標誌,這些標誌修改了特殊字元的行為。因此,透過使用re.DOTALL標誌,我們可以匹配包含多行的模式。
示例
在下面的示例程式碼中,我們使用正則表示式匹配段落的跨度。我們首先匯入正則表示式模組。
import re
然後,我們使用了從 re 模組匯入的search()函式。此re.search()函式搜尋字串/段落中的匹配項,如果存在任何匹配項,則返回一個匹配物件。group()方法用於返回匹配的字串部分。
import re paragraph = \ ''' <p> Tutorials point is a website. It is a platform to enhance your skills. </p> ''' match = re.search(r'<p>.*</p>', paragraph, re.DOTALL) print(match.group(0))
輸出
執行上述程式後,將獲得以下輸出。
<p> Tutorials point is a website. It is a platform to enhance your skills. </p>
廣告