正则表达式使用PHP匹配HTML标记
发布时间:2020-12-14 06:31:18 所属栏目:百科 来源:网络整理
导读:我有这样的内容 psome content,paragraph 1/ppsome content,paragraph 2/ppsome content,paragraph 3/p 我想返回第一段,即 psome content,paragraph 1/p 任何人都可以帮助我使用正则表达式代码吗? ‘LT p为H.;LT(*); / p为H.’似乎没有用 你可以这样做: if
我有这样的内容
<p>some content,paragraph 1</p> <p>some content,paragraph 2</p> <p>some content,paragraph 3</p> 我想返回第一段,即 <p>some content,paragraph 1</p> 任何人都可以帮助我使用正则表达式代码吗?
你可以这样做:
if (preg_match('%(<p[^>]*>.*?</p>)%i',$subject,$regs)) { $result = $regs[1]; } else { $result = ""; } 你根据常规表达式测试你的字符串,如果有一些匹配,你得到第一个,只得到第一个,如果没有,$result将是一个空字符串. 如果你需要获得超过第一个结果,你可以迭代$regs数组.而且你需要找到任何其他标签更改常规expresión来加工它,例如找到你使用的IMAGE标签: (<img[^>]*>.*?</img>) 编辑:如果你是逐行处理(只有你正在寻找的标签),你可以在表达式周围放置^ … $以匹配一个完整的行,如下所示: if (preg_match('%^(<p[^>]*>.*?</p>)$%im',$regs)) { $result = $regs[1]; } else { $result = ""; } HTH,问候. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |