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

如何从字符串中删除空的段落标签?

鲁单弓
2023-03-14
问题内容

我遇到了WordPress模板的轻微编码问题。这是我在模板中使用的代码:

<?php echo teaser(40); ?>

在我的函数中,我使用它来剥离标签并仅从允许的标签中获取内容。

<?php
function teaser($limit) {
    $content = explode(' ', get_the_content(), $limit);
    if (count($content)>=$limit) {
    array_pop($content);
    $content = implode(" ",$content).'...';
    } else {
    $content = implode(" ",$content);
    }   
    $content = preg_replace('/\[.+\]/','', $content);
    $content = apply_filters('the_content', $content); 
    $content = str_replace(']]>', ']]&gt;', $content);
    $content = strip_tags($content, '<p><a><ul><li><i><em><strong>');
    return $content;
}
?>

问题:我使用上面的代码从内容中剥离了标签,但是WordPress已经将图像标签放在段落中。因此结果是空段标记,其中图像被剥离。

只是为了清理我的代码和无用的空标签。我的问题是如何删除空的段落标签?

<p></p>

在此先多谢!:)


问题答案:

使用此正则表达式删除空的段落

/<p[^>]*><\\/p[^>]*>/

<?php
$html = "abc<p></p><p>dd</p><b>non-empty</b>"; 
$pattern = "/<p[^>]*><\\/p[^>]*>/"; 
//$pattern = "/<[^\/>]*>([\s]?)*<\/[^>]*>/";  use this pattern to remove any empty tag

echo preg_replace($pattern, '', $html); 
// output
//abc<p>dd</p><b>non-empty</b>
?>


 类似资料:
  • 问题内容: 我使用的框架会不时返回格式错误的字符串,其中包含“空”字符。 例如,“ foobar”表示为:[,f,o,o,b,a,r] 第一个字符不是空格(’‘),因此System.out.printlin()将返回“ foobar”而不是“ foobar”。但是,String的长度是7,而不是6。显然,这使大多数String方法(等于,拆分,子字符串等)变得无用。有没有办法从字符串中删除空字符?

  • 本文向大家介绍如何从Python的字符串列表中删除空字符串?,包括了如何从Python的字符串列表中删除空字符串?的使用技巧和注意事项,需要的朋友参考一下 您可以使用过滤器过滤掉空字符串。filter的第一个参数是lambda,它将告诉您字符串是否为空。您可以将此lambda传递为None,bool,len或检查字符串是否为空的函数。您可以通过以下几种方式进行检查: 请单击下面的链接以查看带有简单

  • 本文向大家介绍如何从PowerShell中删除空字符串/行?,包括了如何从PowerShell中删除空字符串/行?的使用技巧和注意事项,需要的朋友参考一下 在许多情况下,您需要从PowerShell字符串数组或文件中删除空行或字符串。在本文中,我们将删除结果或从不为空的行中过滤输出,而不是删除空字符串。这样,我们可以获得没有空行的输出。 考虑下面的示例,我们有一个名为EmptryString.tx

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

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

  • 问题内容: 如何删除python字符串中的所有空格?例如,我希望将一个字符串转换为,但是我似乎无法通过以下方式完成此操作: 问题答案: 利用没有sep参数的str.split的行为: 如果只想删除空格而不是所有空格: 过早优化 尽管效率不是主要目标(编写清晰的代码是),但以下是一些初始时间: 请注意,正则表达式已缓存,因此它没有您想象的那么慢。编译事前帮助一些,但在实践中,如果你把这个只会重要 很