# -*- coding: utf-8-*-

import re

##过滤HTML中的标签

#将HTML中标签等信息去掉

#@param htmlstr HTML字符串.

def filter_tags(htmlstr):

#先过滤CDATA

re_cdata=re.compile('//]*//]]>',re.I) #匹配CDATA

re_script=re.compile(']*>[^',re.I)#Script

re_style=re.compile(']*>[^',re.I)#style

re_br=re.compile('')#处理换行

re_h=re.compile('?w+[^>]*>')#HTML标签

re_comment=re.compile('')#HTML注释

s=re_cdata.sub('',htmlstr)#去掉CDATA

s=re_script.sub('',s) #去掉SCRIPT

s=re_style.sub('',s)#去掉style

s=re_br.sub('n',s)#将br转换为换行

s=re_h.sub('',s) #去掉HTML 标签

s=re_comment.sub('',s)#去掉HTML注释

#去掉多余的空行

blank_line=re.compile('n+')

s=blank_line.sub('n',s)

s=replaceCharEntity(s)#替换实体

return s

##替换常用HTML字符实体.

#使用正常的字符替换HTML中特殊的字符实体.

#你可以添加新的实体字符到CHAR_ENTITIES中,处理更多HTML字符实体.

#@param htmlstr HTML字符串.

def replaceCharEntity(htmlstr):

CHAR_ENTITIES={'nbsp':' ','':' ',

'lt':'

'gt':'>','':'>',

'amp':'&','':'&',

'quot':'"','':'"',}

re_charEntity=re.compile(r'?(?Pw+);')

sz=re_charEntity.search(htmlstr)

while sz:

entity=sz.group()#entity全称,如>

key=sz.group('name')#去除&;后entity,如>为gt

try:

htmlstr=re_charEntity.sub(CHAR_ENTITIES[key],htmlstr,1)

sz=re_charEntity.search(htmlstr)

except KeyError:

#以空串代替

htmlstr=re_charEntity.sub('',htmlstr,1)

sz=re_charEntity.search(htmlstr)

return htmlstr

def repalce(s,re_exp,repl_string):

return re_exp.sub(repl_string,s)

if __name__=='__main__':

str='' # 需要提取的html字符串

str=filter_tags(str)

print(str)

利用正则表达式去除所有html标签,只保留文字

后台将富文本编辑器中的内容返回到前端时如果带上了标签,这时就可以利用这种方法只保留文字. 标签的格式有以下几种 1.

python爬虫2:按html标签提取信息和中文域名处理(BeautifulSoup用法初步)

#!/usr/bin/env python # -*- coding: utf- -*- # python3 import string import urllib from urllib impor ...

Java中正则表达式去除html标签

Java中正则表达式去除html的标签,主要目的更精确的显示内容,比如前一段时间在做类似于博客中发布文章功能,当编辑器中输入内容后会将样式标签也传入后台并且保存数据库,但是在显示摘要的时候,比如显示正 ...

[python] 常用正则表达式爬取网页信息及分析HTML标签总结【转】

[python] 常用正则表达式爬取网页信息及分析HTML标签总结 转http://blog.csdn.net/Eastmount/article/details/51082253 标签: pytho ...

运用正则表达式在Asp中过滤Html标签代码的四种不同方法

Function RemoveHTML(strHTML)Dim objregExp, Match, MatchesSet objRegExp = New RegexpobjRegExp.IgnoreC ...

java正则表达式去除html标签

当我们用ckeditor或其他一些在线文本编辑器的时候 内容里会有很多的标签 如下片段:

python3 正则 去除 html标签、提取正文内容_Python通过正则表达式去除(过滤)HTML标签,提取文字...相关推荐

  1. c#正则表达式取出数据库中带html标签的内容,C#用正则表达式 获取网页源代码标签的属性或值...

    1.有url获取到网页源代码: using System.Web; using System.IO; using System.Net; private void GetHtmlinfo(string ...

  2. python正则去掉重复单词_python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解 | 学步园...

    在pdf转为文本的时候,经常会多出空格,影响数据观感,因此需要去掉文本中多余的空格,而文本中的英文之间的正常空格需要保留,输入输出如下: input:我今天 赚了 10 个亿,老百姓very happ ...

  3. python从文件中提取特定文本_python利用正则表达式提取文本中特定内容

    正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. re 模块使 Python ...

  4. python中文字符串多余空格_python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解...

    python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解 在pdf转为文本的时候,经常会多出空格,影响数据观感,因此需要去掉文本中多余的空格,而文本中的英文之间的正常空格需要保留,输入 ...

  5. python提取日志内容_Python正则提取日志内容

    日志格式如下 [main] INFO com.jzdata.press.core.PressTest - select cs_bill_customer_sk,count(*) from catalo ...

  6. 知道标签html中的标签,我的取包括标签的标签内的内容使用的正则表达式()

    <div width=[\s\S]+</div> <div width=[\s\S]+?</div>

  7. python提取pdf内容_别再问如何用Python提取PDF内容了!

    导读 大家好,在之前的办公自动化系列文章中我们已经详细介绍了

  8. python匹配数字开头的内容_python使用正则表达式匹配字符串开头并打印示例

    python 正则表达式,怎样匹配以某个字符串开头,以str ="abcdefg123213qwe" 比如要匹配以abc开头,以qwe结尾,要怎样写呢?匹配以某个字符串开头,以某个 ...

  9. python excel 提取特定行_Python之从Excel一列内提取数字

    要做的事情 变为 其实这个不难,就是有个坑在里面. 就比如说我第一次就跳到坑里去了:一开始我的想法是用切片.但是运行下来发现两位数的按照切片的方法的话只能切到一位.就比如13只能得到1. 要做的事情 ...

最新文章

  1. DBA(四):数据读写分离,MySQL多实例操作
  2. 使用 [funcref boost::pfr::get] 按索引访问结构体字段的测试程序
  3. Intellij idea 添加浏览器
  4. ImageIO复制图片大小改变
  5. 国内如何申请到Twitter API
  6. C语言修仙by百度云,国家让我去当猫txt下载,国家让我去当猫笔趣阁,国家让我去当猫燃文 - 格格党...
  7. 比大衣保暖,比羽绒服显瘦!这件高级反貂绒毛衣火了!不起球不掉毛,明明毛茸茸的却巨显瘦,舒适又保暖....YYDS!...
  8. Windows7 开机自启脚本
  9. Python学习记录——英文名修改成标准格式
  10. android指南针卡死,android指南针
  11. 小红书怎么推广引流?怎么样在小红书上引流?
  12. C# 对Excel表格中的数据进行排序
  13. 接口测试有那些工具,他们的优劣势?
  14. ISO26262解析(十)——HSI
  15. 谈一谈机器视觉里的定拍与飞拍
  16. 备份工具mysqldump介绍
  17. python opencv改变图片亮度_opencv+python 如何改变图片亮度?
  18. Ubuntu PX4无人机仿真环境配置
  19. 3阶以下贝塞尔曲线轨迹库和任意轨迹库
  20. ET4.0 Unity学习实录

热门文章

  1. SpringCloud微服务:Eureka组件之服务注册与发现
  2. error: Pulling is not possible because you have unmerged files
  3. (八)JAVA springcloud ssm b2b2c多用户商城系统源码:配置中心服务化和高可用
  4. React 组件的生命周期详解
  5. 10 条真心有趣的 Linux 命令
  6. spring+ibatis事务管理配置
  7. 双显示器N卡安装ubuntu驱动以及解决办法
  8. 读写XML文档时,去掉新增加节点的“空命名空间”(xmlns=””)
  9. classpath理解
  10. mysql建立索引 有什么缺陷_MySQL数据库建立索引的优缺点以及什么样的字段适合建立索引...