Php 如何从HTML标签中获取特定单词后的链接文本?

Php 如何从HTML标签中获取特定单词后的链接文本?,php,html,html-parsing,Php,Html,Html Parsing,可能重复: 我试图从文本“Dir:”后面的链接中获取文本,例如,使用php或regex打开和关闭“a”标记(导演的名字,这里是Sam Raimi)之间的文本 比如说 <span class="credit"> Dir: <a href="/name/nm0000600/">Sam Raimi</a> With: <a href="/name/nm0001497/">Tobey Maguire</a>, <a hr

可能重复:

我试图从文本“Dir:”后面的链接中获取文本,例如,使用php或regex打开和关闭“a”标记(导演的名字,这里是Sam Raimi)之间的文本

比如说

<span class="credit">
    Dir: <a href="/name/nm0000600/">Sam Raimi</a>
    With: <a href="/name/nm0001497/">Tobey Maguire</a>, <a href="/name/nm0000379/">Kirsten Dunst</a>, <a href="/name/nm0000353/">Willem Dafoe</a>
</span>

目录:
带:,

任何帮助都将不胜感激

若要获得导演的学分,您可以使用:

这将获得文本节点后的第一个a元素,该文本节点包含字符串“Dir:”,该字符串是具有类属性值“credit”的span元素的子元素


有关如何使用DOM的一般用法示例,请参见。+/p>
^\s*Dir:.+?>([\w\s]+)$
您是否有机会再解释一下?@Pogo在某些情况下,这是行不通的,而且对于小猫们来说,您无法用正则表达式解析html。Madara是正确的,您要做的是使用一个现有库将HTML解析为一棵树,然后遍历树并查找包含“Dir:”后跟锚节点的文本节点。
//span[@class="credit"]/text()[contains(., "Dir:")]/following-sibling::a[1]'