正则表达式(以后遇见不同的,会新增)
2017-08-18 10:10
197 查看
import re from HTMLParser import HTMLParser ss = """<li class="oneline"><strong>工商注册号:</strong>110000400123587</li> <li class="oneline"><strong>法定代表人:</strong>马一兵</li> <li class="oneline"><strong>企业类型:</strong>外国企业常驻代表机构</li> <li class="oneline"><strong>住所:</strong>北京市东城区东长安街1号东方广场东方经贸城西一办公楼二层7室</li> <li class="oneline"><strong>成立日期:</strong>2003/06/2000:00:00.000</li> <li class="oneline"><strong>登记机关:</strong>北京市工商行政管理局</li> <li class="oneline"><strong>有效时间:</strong>20170810 </li> <li class="oneline"><strong>统一社会信用代码:</strong>91110000752150853R </li> """ model = re.compile(r'<strong>(.*?)</strong>(.*?)</li>') dataList = re.findall(model,ss) for data in dataList: print HTMLParser().unescape(data[0]),HTMLParser().unescape(data[1])
这里最重要的就是(.*?)中的问号,表示非贪恋模式,就是最短匹配。不然会匹配越界,导致效果不是自己想要的。
结果图:
相关文章推荐
- jdbc新增以后获取自增id
- Action取得变量值以后再进行国际化,使有限个不同结果对应不同语言。
- 最近做了多个不同的数据库操作的项目,没事干了就试着封装一些基本的数据库操作,以后能自己用自己的类
- Firefox, IE等不同浏览器对JavaScript,CSS不同解析问题 (转备以后使用)
- Button 设置适应不同版本 旋转以后大小相应的改变
- opencv2.0以后新增C++接口的 Mat矩阵 单行赋值及矩阵合并的问题与实现
- 转载 对于技术术语专业化的思考(孟岩)(以后每次遇见一个术语,先查词典,不要被糟糕的中文译名所惑!)
- 新增以后立即查询自增的主键
- 新增非空约束字段在不同版本中的演进
- 出生19988,直到25遇见4个数字不同年份
- 搞懂html5新增的拖放API(分析火狐和其它浏览器的不同)
- C#在一台客户端进行了某个操作以后如何让其他不同的客户端如何实现相同的操作(一)
- IOS6及以后如何标识不同设备
- 新增格式化单元格数据功能-dotNetFlexGrid1.24,快速的设置您的表格数据的不同样式;现在开始扔掉你的Asp.net GridView吧。(更新FieldFormatorHandle参数)
- 新增格式化单元格数据功能-dotNetFlexGrid更新1.24版本,快速的设置您的表格数据的不同样式;现在开始扔掉你的Asp.net GridView吧。
- 使用EXPDP IMPDP传输不同数据库的不同表空间(新增网络传输)
- C#在一台客户端进行了某个操作以后如何让其他不同的客户端如何实现相同的操作(二)
- mybatis oracle下不同表空间表名重复与批量删除,新增
- linux下的oracle从10g以后其启动与关闭与以前版本有所不同
- pes项目新增和修改时表格行索引不同的问题