首頁 > 後端開發 > C++ > 如何使用正規表示式從 HTML 連結中提取 href 值?

如何使用正規表示式從 HTML 連結中提取 href 值?

Susan Sarandon
發布: 2025-01-10 08:12:41
原創
247 人瀏覽過

How Can I Extract href Values from HTML Links Using Regular Expressions?

使用正規表示式從 HTML 連結中擷取 href 值

雖然通常建議使用專用的 HTML 解析器來實現強大的 HTML 解析,但正規表示式方法可用於更簡單的場景。 此解提取 href 值,處理單引號和雙引號:

<code><a\s+(?:[^>]*?\s+)?href=("|')(.+?)</code>
登入後複製

說明:

  • <as :匹配開始 <a> 標記,後面跟著可選的空格。
  • (?:[^>]*?s )?:可以選擇符合 href 之前的任何其他屬性和空格。 ?: 使其成為非捕獲組。
  • href=("|'):匹配後跟單引號或雙引號的 href 屬性。 該報價被捕獲在第 1 組。
  • (. ?):捕獲 href 值本身(第 2 組)。
  • 1:匹配結束引號(與第 1 組中捕獲的開始引號相同)。

重要注意事項:

這個正規表示式不是一個完整的 HTML 解析器。它會在格式錯誤或複雜的 HTML 上失敗。 它最適合預處理、簡化的 HTML 片段。 例如,在提取的 href 屬性清單上使用它,如下所示:href="mylink.com"

過濾特定連結類型:

要過濾包含問號 (?) 和等號 (=) 的鏈接,請使用此精煉的正則表達式:

<code>href=(.*?)\?(.*?)=(.*?)</code>
登入後複製

這可確保僅選擇具有指定特徵的連結。 請記住,複雜的 HTML 結構需要專用的 HTML 解析器才能獲得可靠的結果。

以上是如何使用正規表示式從 HTML 連結中提取 href 值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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