2013-04-16 105 views
0

我真的不知道爲什麼這不起作用,因爲我強調它(.*?)應該匹配所有字符。我有一種感覺,它可能與HMTL中的特殊字符有關?Preg Match與HTML字符匹配問題

這裏是我的代碼

preg_match('/butt_box(.*?)img/',$return_string, $returned_val); 

這裏是我試圖提取(試圖提取什麼butt_box並按照第一img標籤之間的HTML。

<table class="butt_box"> 
     <tbody><tr> 
      <td style="width:100%;"> 
      <div class="product_box3_price" style="padding: 15px 0 0 0; text-align:center;"><strong>Price Unavailable</strong><br> 
      </div> 
      </td> 

      <td> 
      <div style="padding: 9px 0 6px 0"><a href="http://www.xxxxxx.com.au/index.php?main_page=product_info&amp;products_id=1399"><img src="includes/templates/theme243/buttons/english/button_goto_prod_details.gif" alt="Go To This Product's Detailed Information" title=" Go To This Product's Detailed Information " width="144" height="36"></a><br> 
      </div> 
      </td> 
     </tr> 
     </tbody> 
</table> 
+0

您解析html wi th正則表達式。這不好。 – pguardiario

+0

爲什麼不能?有什麼選擇? – Melbourne2991

+0

我不想進入它,但一個快速的谷歌搜索應該把你整理出來。 – pguardiario

回答

1

您需要使用 PCRE修飾符允許點匹配換行符

preg_match('/butt_box(.*?)img/s',$return_string, $returned_val); 
+0

完美,謝謝! – Melbourne2991