如何使正規表示式中的點(.)符合換行符?

Mary-Kate Olsen
發布: 2024-10-31 13:10:02
原創
484 人瀏覽過

How to Make the Dot (.) Match Newlines in Regular Expressions?

使用正規表示式使點來符合換行符

在正規表示式中,點(.)可以符合除換行符之外的任何字元。但是,有時您可能也想匹配換行符。

要實現此目的,您可以使用 DOTALL 修飾符 (/s)。它使點匹配所有字符,包括換行符。

例如,以下正規表示式將不符合換行符:

/<div>(.*)</div>/
登入後複製

要使其符合換行符,請新增DOTALL 修飾符:

/<div>(.*)</div>/s
登入後複製

但是,如果您想要非貪婪的匹配,這可能並不理想。相反,您可以使用非貪婪匹配:

/<div>(.*?)</div>/s
登入後複製

或者,如果沒有其他標籤,您可以匹配除'

/<div>([^<]*)</div>/
登入後複製

還值得注意的是,您不一定需要使用“/”作為正規表示式的分隔符號。使用不同的字元可以避免轉義

中的斜杠,從而增強可讀性。例如,以下是使用「#」作為分隔符號的前面的正規表示式的外觀:
#<div>([^<]*)</div>#
登入後複製

儘管如此,重要的是要注意,在存在嵌套div、額外空格、 HTML 註釋和其他複雜性。 HTML 非常複雜,因此通常更適合使用 HTML 解析器來完成此類任務。

以上是如何使正規表示式中的點(.)符合換行符?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板