谢谢各位热心解答,上面的标签没显示出来,将尖括号改为小括号示例应该是这样的:
stockpick/cache?token=(upara)urlpara(upara)&p=(upara)add(upara)&perpage=70&showType=
使用正则表达式取出两个标签(upara) (upara)之间的文字,应取出urlpara与add两个字符串,结果应为一个字符串数组,
求正则表达式写法,最好用软件或在线工具测试过。
(\w+)(?=&):这个正则是取出中间的路径参数数值(排除最后一个参数的数值)
如果不想要参数值是数字的,就用如下正则:([a-zA-Z]+)(?=&)
(?<=token=).+?(?=&) 取出urlpara
(?<=p=).+?(?=&) 取出add
试试这个吧:token=([\s\S]*?)&p=([\s\S]*?)&\S+
token=([\s\S]*?)&p=([\s\S]*?)&\S+
返回的是一个数组,分别是取出的 urlpara和add
标签数是变化的么?如果不是变化的这样就行
s='stockpick/cache?token=urlpara&p=add&perpage=70&showType='
r=re.compile('.*(=(.*)&.*)=(.*)&.*=(.*)&.*')
r.search(s).group(1)
r.search(s).group(2)