【发布时间】:2019-01-15 02:19:50
【问题描述】:
我有像底部这样的 html。并使用 PHP
<table style="...">
<tbody>
<tr> <img id="foo" src="foo"/></tr>
</tbody>
</table>
<p> ....</p>
<table style="...">
<tbody>
<tr> <img id="bar" src="bar"/></tr
</tbody>
</table>
我开始使用 PHP。
我想找到特定的表,如 img src 或 id 等于 foo 或 bar。
但选择了两个表。
这是我的正则表达式
1.find表有img标签
/<table.*?>.*?<img *.*?<\/table>/
-> 选择了 2 个表
2.添加img src
<table.*?<img.+(src=.*?foo).*?<\/table>
-> 全部选中,从第一个标签到最后一个标签
3.所以尽量不要在...标签之间包含</table>。
<table.*?(?!<\/table>).*?<img.+(src=.*?foo).*?<\/table>
-> 相同的结果 我不知道怎么了! 我使用 preg_match_all() 解决了,但仍然想知道 preg_match() 有什么想法吗??
谢谢!
【问题讨论】: