前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python正则表达式替换字符串

python正则表达式替换字符串

作者头像
the5fire
发布2019-02-28 15:47:29
3.8K0
发布2019-02-28 15:47:29
举报

一个实例,有一段html代码,不符合xml格式规范,所以要用python对它进行下转换。 其中要转换的地方有:

::

代码语言:javascript
复制
1、[&]转为[&](但是不能把[ ]转了);
2、把代码中的["=""]去掉;
3、把[svg]和[path]标签都改为[svg:svg]和[svg:path];
4、关闭[img]标签;
5、将url()中的["]转为[']

使用正则对html进行了处理。 下面就是代码:

.. code:: python

代码语言:javascript
复制
import re
str_url = 'test,&nbsp;url("http://www.baidu.com")&,dddddd "="" <svg></svg><path></path><img src="http://www.baidu.com">ininnnin<img src="http://www.dd.com">'
#2、把代码中的["=""]去掉;
#3、把[svg]和[path]标签都改为[svg:svg]和[svg:path];
str_url = str_url.replace('"=""','')
str_url = str_url.replace('svg','svg:svg')
str_url = str_url.replace('path', 'svg:path')

#1、[&]转为[&amp;](但是不能把[&nbsp;]转了);
url_re = re.compile('&(?!\w{4};)')
str_result = url_re.sub('&amp;', str_url)

#4、关闭[img]标签;
img_list = re.findall('<img.*?>',str_result)

for img_r in img_list:
    str_result = str_result.replace(img_r,img_r + '</img>')

#5、将url()中的["]转为[']
url_list = re.findall('url\(".*?"\)',str_result)
print url_list
for url_r in url_list:
    url_new = url_r.replace('"','\'')
    str_result = str_result.replace(url_r,url_new)
print str_result
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2012-02-26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档