簡體   English   中英

PHP使用正則表達式在標簽之間替換

[英]PHP Replace Between Tags with Regex

我很麻煩在兩個標簽之間替換數據。 我不知道將匹配此模式的正則表達式。 My tags are simply <!-- Model # Start --> and <!-- Model # End -->

碼:

        $products[''.$row[0].''][2] = preg_replace("/(<!-- Model # Start -->).*(<!-- Model # End -->)/i", "$1$2", $products[''.$row[0].''][2]);
        echo $products[''.$row[0].''][2] . "\n";

數據:$ products [''。$ row [0]。''] [2]

Economical. 7 mils thick, tough & stretchy. Each roll cellophane wrapped. UL listed.

<!-- Model # Start -->
<p style='text-align: right;'>16736</p>
<!-- Model # End -->

嘗試:

/(.*<!-- Model # Start -->).*(<!-- Model # End -->.*)/im

注意多行匹配的m標志。

如果您多次出現標簽,則可以使用勉強的量詞來獲得第一個匹配項,也可以使用環視。

http://rubular.com/有助於測試。

我會這樣匹配...

$match = 'Model\s#\s';

preg_replace('/<!--\s?' . $match . 'Start\s?(.*?)\s?' . $match . 'End\s?-->/i', '<span>$1</span>', $row);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM