2012-08-09 48 views
0

做字符串替换我有一个字符串,该字符串中的格式为一些链接如何在PHP

<a href="...some url...">Text</a>

我想替换整个部分与一条不同的标记

问题是,虽然我可以得到标记的整体结构被替换;还有URL,对我来说“Text”并不是那么容易。如果我知道整个链接,那么我可能会做类似的事情。

'str_replace($ each_link,$ my_new_markup,$ the_original_string);'

并遍历每个链接,但我不能知道$ each_link将会是什么。

有什么方法可以寻找这样的东西?我认为这肯定与REGEX有关,但我完全没有希望,我甚至不知道这是否是正确的开始。

<a href="...some url..."> [WILDCARD of some kind] </a>

回答

2

你可以看看这样的一类,Simple HTML DOM Parser,你可以通过元素搜索特定的内部HTML或其他属性使用周期,然后改变它。

代码看起来像这样

foreach($html->find('a') as $element) { 
    if ($element->innertext == $needle) { 
    $element->innertext = $my_new_markup; 
    } 
} 
+0

接受这个答案 - 上进一步研究事实证明,DOM解析是推荐的方法,在例如正则表达式或东西。谢谢,以前没听说过。 – byronyasgur 2012-08-16 14:35:54