首页 > 其他分享 >只保留文章中的某些标签

只保留文章中的某些标签

时间:2023-11-13 09:35:00浏览次数:34  
标签:tmp string tags 标签 文章 保留 re tag allowed

def strip_tags(string, allowed_tags=''):
    if allowed_tags != '':
        # Get a list of all allowed tag names.
        allowed_tags = allowed_tags.split(',')
        allowed_tags_pattern = ['</?' + allowed_tag + '[^>]*>' for allowed_tag in allowed_tags]
        all_tags = re.findall(r'<[^>]+>', string, re.I)
        not_allowed_tags = []
        tmp = 0
        for tag in all_tags:
            for pattern in allowed_tags_pattern:
                rs = re.match(pattern, tag)
                if rs:
                    tmp += 1
                else:
                    tmp += 0
            if not tmp:
                not_allowed_tags.append(tag)
            tmp = 0
        for not_allowed_tag in not_allowed_tags:
            string = re.sub(re.escape(not_allowed_tag), '', string)
    else:
        # If no allowed tags, remove all.
        string = re.sub(r'<[^>]*?>', '', string)

    return string

 

标签:tmp,string,tags,标签,文章,保留,re,tag,allowed
From: https://www.cnblogs.com/wolvies/p/17828461.html

相关文章

  • 取标签列表的最后两位,并去除最后一个逗号,没有标签就用标题
    defupdate_biaoqian(tag_list,title):iftag_list==['']ortag_list==[]:print('没有标签,取标题作为标签')titless=re.sub('\s',',',title)tag_list=title.replace('、',','......
  • 初学者如何在博客园发表文章
    1、首先打开博客园官网,然后进行注册和登录,登录成功后会显示头像,如下界面2.登录成功后,鼠标点击头像点击进入到我的园子3、点击写博即可进入到文章书写界面4、进入到文章书写界面,首先点击文章,再点击左边新建文章即可。文章包括了标题部分以及工具栏,中间空白处是文章书写区域。......
  • 文章导览
    温馨提示:所有的名字都是可以点击哦!题解P4826[USACO15FEB]SuperbullS题解[BZOJ1202][HNOI2005]狡猾的商人's题解P1262间谍网络’s题解[THUSCH2017]大魔法师小凯的疑惑题解算法与定理【模板】线段树【模板】位运算【模板】并查集【证明】唯一分解定理其他S......
  • 医院诊断证明一键生成器,画板+透明标签+取快照即可实现
    画板+透明标签+取快照就能实现一个自动生成诊断截图的工具,图片还是从网上随便找的,这个你可以自己随便换,但是我这里因为写教程所以加了水印,当然仅仅只是为了把自己的开发经验和思路以及代码逻辑分享一下而已,就是通过快照取画板截图,输出通过写到文件()命令即可实现,图片字节集信息通过......
  • 在线制作仿真病历证明软件,易语言实现病例报告生成器,取画板快照+标签+编辑框
    闲着无聊用易语言开发了一个病例生成器,当然我加了水印的,这个图片你就算截图你也用不了,模板是从百度图库搜的,很多,我就随便找了一个,然后实现逻辑就是加了一个画板,然后载入了素材图,素材信息元素上面加入透明标签,默认不支持透明,但可以用黑月支持库就可以实现标签的透明化,然后具体的实......
  • 一篇文章带你了解Python基础测试工具——UnitTest
    一篇文章带你了解Python基础测试工具——UnitTest测试人员一般使用Python作为主语言脚本来进行自动化开发,而Python自带的UnitTest脚本通常就是测试人员首先掌握的那么本篇文章我们将来介绍Python的最基本自动化工具UnitTest来开始我们自动化的第一步我们这篇文章将从以下角度进......
  • 将博客园或者csdn文章复制到自己随笔中
    csdn或者博客园中中有很多优秀的文章,自己习惯在博客园记录,为了便于之后浏览,习惯复制到博客园收藏。问题是csdn中复制全文,在博客园编辑器(TinyMCE编辑器)中粘贴时,图片无法直接粘贴过来,图片多的时候比较麻烦。怎样直接复制粘贴全文?参考:https://www.cnblogs.com/c2soft/articles......
  • 如何将element-ui中的tab组件默认展示的tab标签数量改掉?
    要将ElementUI中的Tab组件默认展示的标签数量更改,可以使用tab-list属性设置。tab-list属性用于控制默认展示的标签数量。以下是修改Tab组件默认展示标签数量的示例代码:<template><el-tabsv-model="activeTab":tab-list="tabList"><el-tab-panev-for="tabint......
  • double保留两位小数
    我们都知道double和float都是浮点型,在转型或者比较的时候可能出现问题,这里讲一下怎么针对double类型做精度处理返回类型为double(四舍五入)使用Math.round转成long再转回doubledoubledou=3.1487426;dou=(double)Math.round(dou*100)/100;System.out.println(dou);使......
  • 注意break除了用于中断循环以及switch语句,还可以用于标签化语句的中断
    请问以下JS代码的输出结果以及变量i的值是?vari=100;functionfoo(){bbb:try{console.log("position1");returni++;}finally{breakbbb;}console.log("position2");returni;}foo();Aposition1、posit......