首页 > 其他分享 >删除文章里的中文符号和空格,换成英文逗号,并获取最后两个标签

删除文章里的中文符号和空格,换成英文逗号,并获取最后两个标签

时间:2023-08-24 14:36:01浏览次数:43  
标签:空格 elif tags 标签 list replace 逗号 tag

def update_biaoqian(tag_list, title):
    if len(tag_list) == 0:
        print('没有标签,取标题作为标签')
        titless = re.sub('\s', ',', title)
        tag_list = title.replace('、', ',').replace(';', ',').replace(',', ',').replace('。', ',').replace(' ', ',').replace('?', ',')
        # 把相邻的逗号简化成一个
        tags = re.sub(r"(,)\1+", r"\1", tag_list)
        # 开头是逗号,从第二个开始取值
        if tags[0] == ',' and tags[-1] != ',':
            tags = tags[1:]
        # 结尾时句号,从倒数第二位取值
        elif tags[0] != ',' and tags[-1] == ',':
            tags = tags[:-1]

        elif tags[0] == ',' and tags[-1] == ',':
            tags = tags[1:-1]
        elif tags[0] != ',' and tags[-1] != ',':
            tags = tags
        # 以逗号作为分隔符,取二个
        tag = tags.split(',')[-2:][0]
    else:
        tag_list = ''.join(tag_list)
        # 把空格,顿号,逗号,句号,问号,分好转换成英文逗号
        tag_list = tag_list.replace('、', ',').replace(';', ',').replace(',', ',').replace('。', ',').replace(' ', ',').replace('?', ',')
        # 把相邻的逗号简化成一个
        tags = re.sub(r"(,)\1+", r"\1", tag_list)
        # 开头是逗号,从第二个开始取值
        if tags[0] == ',' and tags[-1] != ',':
            tags = tags[1:]
        # 结尾时句号,从倒数第二位取值
        elif tags[0] != ',' and tags[-1] == ',':
            tags = tags[:-1]

        elif tags[0] == ',' and tags[-1] == ',':
            tags = tags[1:-1]
        elif tags[0] != ',' and tags[-1] != ',':
            tags = tags
        # 以逗号作为分隔符,取二个
        tag = tags.split(',')[-2:][0]

    return tag

标签:空格,elif,tags,标签,list,replace,逗号,tag
From: https://www.cnblogs.com/wolvies/p/17654029.html

相关文章

  • BCEloss和多标签任务
    BCEWithLogLoss(BinaryCrossEntropywithLogLoss)和BCE(BinaryCrossEntropy)是两种常用的二分类损失函数,它们的区别主要在于损失函数的形式和计算方式上。BCEWithLogLoss是基于对数损失函数的二分类损失函数。它的计算公式为:BCEWithLogLoss(y,ŷ)=-y*log(ŷ)-(1-y)......
  • meta标签的作用是什么
    meta是用来在HTML文档中模拟HTTP协议的响应头报文。meta标签用于网页的<head>与</head>中,meta标签的用处很多。meta的属性有两种:name和http-equiv。name属性主要用于描述网页,对应于content(网页内容),以便于搜索引擎机器人查找、分类(目前几乎所有的搜索引擎都使用网上机器人自动查找me......
  • golang中goto跳转语句和跳转标签声明
    和很多其它语言一样,Go也支持goto跳转语句。在一个goto跳转语句中,goto关键字后必须跟随一个表明跳转到何处的跳转标签。我们使用LabelName:这样的形式来声明一个名为LabelName的跳转标签,其中LabelName必须为一个标识符。一个不为空标识符的跳转标签声明后必须被使用至少一次。......
  • Java 获取Html标签中各属性值
    该方式适用于取任何标签的任何属性只要对应替换标签名和属性。publicstaticSet<String>getImgStr(StringhtmlStr){Set<String>pics=newHashSet<String>();Stringimg="";Patternp_image;Matcherm_image;StringregEx_img="<......
  • vue 页面滚动时自动切换Tab标签,点击标签自动滚动页面
    功能:手机端实现切换头部tab定位到下文内容,滚动页面内容时自动定位到相对应tab逻辑:监听+tab切换完整代码:以下是完整代码:<template><divclass="box"><divclass="tab"ref="tab"><divv-for="(item,index)intabs":key=&......
  • 利用svg标签绕过xss校验
    SVG中的<use>元素用于重用其他元素,主要用于联接<defs>和alike,而我们却用它来引用外部SVG文件中的元素元素通过其id被引用,在<use>标签的xlink:href属性中以'#'井字符开头,外部元素的引用同样如此基本结构如下所示: test.html<svg><usexlink:href='external.svg#rectangle'/></......
  • Matplotlib 轴标签和标题
    Matplotlib轴标签和标题设置轴标签和标题时,如果使用中文,可能会出现乱码情况,可以使用以下两行代码解决plt.rcParams['font.sans-serif']=[u'SimHei']#SimHei就是中文字体#因为设置了中文后,负号就乱码了,所以还要设置负号的编码plt.rcParams['axes.unicode_minus']=False#......
  • mybatis <foreach>标签动态增删改查方式
    摘要目录<foreach>标签动态增删改查mybatis<foreach>实战有了建表以及插入,当然少不了删除和更新mapper.xml中<foreach&目录<foreach>标签动态增删改查mybatis<foreach>实战有了建表以及插入,当然少不了删除和更新mapper.xml中<foreach>标签使用适用场景 <......
  • Web_PHP_DedeCMS_{dede:sql}标签用法;
    {dede:sqlsql='selecta.title,a.litpic,z.expert,d.level,d.titles,d.resumefromdede_archivesasa,dede_addonzjtbasz,dede_addondocterasdwherea.id=z.aidandz.expert=d.nameANDa.litpicisnotnullGROUPBYa.titleLIMIT2'} <div......
  • Web_PHP_DedeCMS_{dede:php}标签嵌套查询使用;
    {dede:php} //第一次查询$fsql='SELECTa.id,a.title,a.litpic,d.expert,d.introductionFROMdede_archivesasa,dede_addondiseaseasdWHEREa.id=d.aidGROUPBYd.expertORDERBYa.pubdateDESCLIMIT3';$db-&......