如何删除“<a id="12">&#34; from string</a>

时间:2015-04-10 08:14:01

标签: php regex xhtml

我有一个xhtml字符串,它包含:

<a id="8" />

每次都是随机的。它没有href属性,所以可能在没有href的情况下删除所有<a>是一个选项吗?我想用PHP删除这些部分,我最好的方法是什么?

我想使用整洁,但我认为它没有删除这些标签的选项。

如果那是不可能的,我相信preg_replace()正则表达式是我的第二个最佳方法。但是,我不知道删除这些部分的正则表达式字符串。

2 个答案:

答案 0 :(得分:0)

我能够通过找出为什么这首代码首先被添加到XHTML字符串中来解决它。我删除了它,从而解决了这个问题。

答案 1 :(得分:0)

试试这个: <a\s+id="[^"]*"[^\/]\/>

$re = "/<a\\s+id=\"[^\"]*\"[^\\/]\\/>/mi"; 
$str = "<a id=\"8\" />\njdf\nsadfa\n<a id=\"df\" />\n<a name=\"df\" />"; 
$subst = ""; 

$result = preg_replace($re, $subst, $str);

然后只移除<a id="8" />,然后使用<a\s+id="8"[^\/]\/>

<强> Demo