如何使用正則表達式從HTML中提取指定內容?

如何使用正則表達式從HTML中提取指定內容?

高效提取html內容:正則表達式應用詳解

在網頁開發和數據處理中,經常需要從HTML代碼中提取特定信息。本文將演示如何利用正則表達式便捷地實現這一目標,并提供JavaScriptphp兩種語言的示例代碼。 假設我們需要提取HTML中形如”label_name”:”歷史” 的內容(其中“歷史”為變量),其他部分忽略。

正則表達式精準匹配

以下JavaScript代碼演示如何使用正則表達式提取目標內容:

const html = 'shflehoshofwe"label_name":"歷史"lshdliflwefoiewoilfjnwo'; const Regex = /"label_name":"(.+?)"/; const match = html.match(regex);  if (match) {   const extractedValue = match[1]; // 注意此處使用match[1]獲取匹配到的內容   console.log(extractedValue); // 輸出:歷史 } else {   console.log("未找到匹配項"); }

正則表達式 /”label_name”:”(.+?)”/ 的含義:

  • “label_name”:”: 匹配字符串”label_name”:”
  • (.+?): 匹配一個或多個任意字符(非貪婪模式,? 保證只匹配到最近的 “)。 這部分是我們要提取的內容。
  • “: 匹配結尾的 “

html.match(regex) 返回匹配結果數組,match[1] 包含第一個捕獲組的內容,即我們需要的變量值。

立即學習前端免費學習筆記(深入)”;

PHP代碼實現

同樣的功能,在PHP中可以使用 preg_match 函數實現:

$html = 'shflehoshofwe"label_name":"歷史"lshdliflwefoiewoilfjnwo'; $regex = '/"label_name":"(.+?)"/'; preg_match($regex, $html, $matches);  if ($matches) {   $extractedValue = $matches[1]; // 注意此處使用$matches[1]獲取匹配到的內容   echo $extractedValue; // 輸出:歷史 } else {   echo "未找到匹配項"; }

PHP代碼與JavaScript代碼邏輯一致,preg_match 函數執行正則匹配,結果存儲在 $matches 數組中,$matches[1] 包含捕獲組的內容。

通過以上示例,您可以輕松地使用正則表達式從HTML代碼中提取所需信息。 記住根據實際需求調整正則表達式,以確保精準匹配。

? 版權聲明
THE END
喜歡就支持一下吧
點贊12 分享