」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 從 HTML 標籤中提取內容時如何匹配正規表示式中的換行符?

從 HTML 標籤中提取內容時如何匹配正規表示式中的換行符?

發佈於2024-11-21
瀏覽:746

How Can I Match Newline Characters in Regex When Extracting Content from HTML Tags?

使用DOTALL 正規表示式修飾符匹配換行符

處理包含普通字元、空格和包含在HTML div 標籤中的換行符的字串時,目標是使用正規表示式來提取

之間的內容。當標準 .* 元字元無法匹配換行符時,就會出現一個常見問題。

要克服這個問題,必須使用 DOTALL 修飾符 (/s)。此修飾符確保點字符(正則表達式中的 .)匹配所有字符,包括換行符。透過將此修飾符合併到正規表示式中,可以準確地擷取div 標籤內的內容:

'/
(.*)/s'

然而,這種方法可能會導致貪婪匹配。為了解決這個問題,建議使用非貪婪匹配:

'/
(.*?)/s'

或者,匹配除

'/
([^

值得注意的是,使用 /以外的字元作為正規表示式分隔符號可以增強可讀性,無需轉義 / in

。以下是使用# 作為分隔符號的範例:
'#
([^

雖然這些解決方案可能足以滿足簡單的情況,但它是承認HTML 很複雜且僅靠正規表示式解析可能還不夠,這一點至關重要。為了確保解析全面可靠,建議考慮使用專用的 HTML 解析器。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3