我真的不确定为什么这不起作用,因为我认为(.*?)
应匹配所有角色。我觉得它可能与HMTL中的特殊字符有关吗?
这是我的代码
preg_match( '/butt_box(.*?)img/',$return_string, $returned_val);
这是我想要提取的HTML(试图提取butt_box和第一个img标记之间的内容。
<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&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 :(得分:1)
您需要使用s
PCRE修饰符来允许点匹配换行符。
preg_match( '/butt_box(.*?)img/s',$return_string, $returned_val);