亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

正則表達式,用于匹配HTML字符串

正則表達式,用于匹配HTML字符串

PHP
海綿寶寶撒 2021-05-13 17:34:56
我正在嘗試執行preg_match_all,這是行不通的。preg_match_all(    '!<div class="Description_Productinfo" itemprop="description"><p><span style="color:#7f8c8d;"><span style="font-family:Arial,Helvetica,sans-serif;"><span style="font-size:14px;">(.*?)</span></span></span></p></div>!',    $html,    $matches1,    PREG_SET_ORDER);foreach ($matches1 as $soge2){print_r($soge2);}我該如何運作?
查看完整描述

1 回答

?
人到中年有點甜

TA貢獻1895條經驗 獲得超7個贊

用RegEx解析HTML可能不是最好的主意,這似乎是您可能想做的。但是,根據您的問題,我猜測您可能希望使用(.*)以下命令從此標簽獲取所有數據:


<span style="font-size:14px;"></span>

可以這樣做。首先,您可以preg_match_all();根據以下條件進行設計:


preg_match_all($pattern, $subject, $matches);

在這種情況下,您的主題是您的HTML輸入,并且不確定,但是您的模式可能是:


/<span style=\"font-size:14px;\">([\w\s]+)(<\/span>)/s 

代碼

$html = '<div class="Description_Productinfo" itemprop="description"><p><span style="color:#7f8c8d;"><span style="font-family:Arial,Helvetica,sans-serif;"><span style="font-size:14px;">Alphanumeric Words If You Wish To Match</span></span></span></p></div>';


preg_match_all('/<span style=\"font-size:14px;\">([\w\s]+)(<\/span>)/s', $html, $matches1, PREG_SET_ORDER);

var_dump($matches1);


foreach ($matches1 as $soge2) {

    print_r($soge2);

}

輸出

Array

(

    [0] => <span style="font-size:14px;">Alphanumeric Words If You Wish To Match</span>

    [1] => Alphanumeric Words If You Wish To Match

    [2] => </span>

)

圖案

您可以使用工具來設計所需的模式,例如:

http://img1.sycdn.imooc.com//60a76919000131f107740213.jpg


查看完整回答
反對 回復 2021-05-21
  • 1 回答
  • 0 關注
  • 219 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號