PHP / regex:如何获取HTML标签的字符串值?

我需要有关正则表达式的帮助,或者preg_match因为我还没有足够的经验,所以这是我的问题。

我需要获取值“ get

me”,但我认为我的函数有错误。html标签的数量是动态的。它可以包含许多嵌套的html标记,例如粗体标记。此外,“获取我”值是动态的。

<?php

function getTextBetweenTags($string, $tagname) {

$pattern = "/<$tagname>(.*?)<\/$tagname>/";

preg_match($pattern, $string, $matches);

return $matches[1];

}

$str = '<textformat leading="2"><p align="left"><font size="10">get me</font></p></textformat>';

$txt = getTextBetweenTags($str, "font");

echo $txt;

?>

回答:

<?php

function getTextBetweenTags($string, $tagname) {

$pattern = "/<$tagname ?.*>(.*)<\/$tagname>/";

preg_match($pattern, $string, $matches);

return $matches[1];

}

$str = '<textformat leading="2"><p align="left"><font size="10">get me</font></p></textformat>';

$txt = getTextBetweenTags($str, "font");

echo $txt;

?>

这应该够了吧

以上是 PHP / regex:如何获取HTML标签的字符串值? 的全部内容, 来源链接: utcz.com/qa/399748.html

回到顶部