首页 > 代码库 > python shell 正则表达式 攫取复杂字符串特定子串

python shell 正则表达式 攫取复杂字符串特定子串

突然自己悟到的一点小技巧,先写在这里,以免以后又忘记。


有个字符串 s=‘‘‘style="border-top:1px dotted #DDD;text-align:left;padding-left:5px;"><a href="http://www.mamicode.com/‘+e.url+‘" target="_blank‘‘‘ 我想把DDD用正则表达式取出来

可以将这个字符串以DDD前后的#和;作为分隔符。举例如下


import re

s=‘‘‘style="border-top:1px dotted #DDD;text-align:left;padding-left:5px;"><a href="http://www.mamicode.com/‘+e.url+‘" target="_blank‘‘‘

reg=r‘[#;]+‘  #关键是规则

li=re.split(reg,s)

print (li)

运行结果如下:

[‘style="border-top:1px dotted ‘, ‘DDD‘, ‘text-align:left‘, ‘padding-left:5px‘, ‘"><a href="http://www.mamicode.com/‘+e.url+/‘" target="_blank‘]


总结:想取出哪个字符串,就看这个字符串前后是被哪两个字符包起来的,就用这两个字符作为分隔符来分隔字符串

python shell 正则表达式 攫取复杂字符串特定子串