当前位置: 首页 > 面试题库 >

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

司马彬
2023-03-14
问题内容

我需要有关正则表达式的帮助,或者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;
?>

这应该够了吧



 类似资料:
  • 问题内容: 我试图从给定的字符串中获取HTML图像标签的url。应该有一些正则表达式来获取它。但是不知道该怎么做。谁可以帮我这个事。 例如 我只需要字符串中的 _http://xyz.com/par.jpg_ 问题答案: 请参阅此问题以供参考。基本上说使用:

  • 问题内容: 我正在尝试在特定标签内获取文本。所以,如果我有: 我希望能够检索文本。 我正在尝试使用正则表达式。如果保持不变,我可以做到,但事实并非如此。 到目前为止,我有这个: 我认为最后两个部分-可以-但我不知道第一部分要做什么。 问题答案: 正如他们所说的,不要使用正则表达式来解析HTML。如果您知道这些缺点,则可以摆脱它。尝试 将遍历字符串中的所有匹配项。 它不会处理嵌套标签,并且会忽略标签

  • 问题内容: 假设我在php中有一个字符串,它会输出到这样的文本文件中: nÖ§9q1Fª£ 如何将其字节码而不是时髦的ascii字符保存到我的文本文件中? 问题答案: 使用ord函数 http://ca.php.net/ord 例如。

  • 问题内容: 使用ASP.NET,如何可靠地剥离给定字符串中的HTML标签(即不使用正则表达式)?我正在寻找类似PHP的东西。 例: 输出: “你好” 我尝试不重新发明轮子,但是到目前为止,我还没有找到任何满足我需求的东西。 问题答案: 如果只是从字符串中剥离 所有 HTML标记,则这也可以与regex 可靠地 一起工作。更换: 与空字符串,全局。不要忘了之后将字符串标准化,替换为: 与单个空格,并

  • 问题内容: 如何从JavaScript中的字符串中剥离HTML? 问题答案: 使用浏览器的解析器可能是当前浏览器中最好的选择。以下将起作用,但有以下警告: 您的HTML在一个元素内有效。HTML包含在或或标签无效内的,因此可能无法正确解析。 (DOM标准属性)和(非标准)属性不相同。例如,将在元素内包含文本,而在元素内则不(在大多数浏览器中)。这只会影响IE <= 8,这是唯一不支持的主要浏览器。

  • 本文向大家介绍如何从JavaScript中的字符串中删除html标签?,包括了如何从JavaScript中的字符串中删除html标签?的使用技巧和注意事项,需要的朋友参考一下 从字符串中删除HTML标签 我们可以使用javascript中的正则表达式删除字符串中的HTML / XML 标签。HTML元素(例如span,div等)出现在左右箭头之间,例如<div>,<span>等。因此,用nothi