python 如何实现PHP替换图片 链接
伊谢尔伦
伊谢尔伦 2017-04-18 10:29:10
[Python讨论组]
def replace_real_url(html, curr_url):
    """
    将 html 中的相对路径替换为 绝对路径
    :param html:
    :param curr_url:
    :return:
    """
    if html and curr_url:
        pattern = ur'<([a-z]{1,5})[^><]*(href|src)=["\']{0,1}([^"\']+)["\']{0,1}[^><]*>'
        html = re.sub(pattern, lambda x: replace_real_url_callback(x, curr_url), unicode(html), re.I | re.M)
    return html
 
 
def replace_real_url_callback(repl, curr_url):
    """
    执行替换
    :param repl:
    :param curr_url:
    :return:
    """
    ret = repl.group()
    if repl and repl.lastindex == 3 and repl.group(1).lower() in ['a', 'img']:
        url = urljoin(curr_url, repl.group(3))
        ret = re.sub(ur'' + re.escape(repl.group(3)), unicode(url), ret)
    return ret

如何修正这个替换的方法。

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(1)
PHP中文网
print re.sub('(<img src=")(.+?)(" />)', r'\1aa\3', 'aa<img src="/aaa.jpg" />bb')

#   aa<img src="aa" />bb
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号