python中split如何优先使用

查看:123
本文介绍了python中split如何优先使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

from_url_start ='s?q='
            if line.find(from_url_start)!=-1:
                from_url = +line.split(from_url_start)[1].split('&')[0]

我通过设定开始索引是's?q='这个,然后再

from_url = +line.split(from_url_start)[1].split('&')[0]

设置结束split('&')的字符串 是这个'&',然后提取这两个中间的值

里面的值为

%E6%B0%B4%E6%9E%9C%E5%B9%B2%E8%8C%B6%E5%88%B6%E4%BD%9C

完整的代码为

s?q=%E8%8D%92%E9%87%8E%E8%8C%B6%E5%92%8C%E8%8C%B6%E5%9B%AD%E8%8C%B6%E7%9A%84%E5%8C%BA%E5%88%AB&src=result_input&srcg=360aphone&rg=0&_ms=0&log_id=548920"
或者
s?q=%E5%B0%8F%E7%BD%90%E8%8C%B6%E5%8A%A0%E7%9B%9F%E8%B4%B9%E8%A6%81%E5%A4%9A%E5%B0%91%E9%92%B1"

在完整代码中有两种结束的标识&和"

有没有办法设定一个,当不存在&时才选择"这个为结束截取区域
需要什么样的正则
如果这样设置split('&|"')他就会同时把后面不需要的参数提取出来

%E8%8D%92%E9%87%8E%E8%8C%B6%E5%92%8C%E8%8C%B6%E5%9B%AD%E8%8C%B6%E7%9A%84%E5%8C%BA%E5%88%AB&src=result_input&srcg=360aphone&rg=0&_ms=0&log_id=548920

他就把这段提取出来了

解决方案

可以先使用replace把 & 统一换成 "

这篇关于python中split如何优先使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆