求大神帮忙,形式简单的一个正则匹配,但是我总是获取不到
下面是python语言写的代码部分,请帮我看看正则表达式。我想获取所有str中“退出费:”后面的值。要求去掉末尾的“;”或“。”:
str1 = "1、参与费:0;2、退出费:0;3、托管费:0.1%;4、固定管理费:0.9%;"
str2 = “2、退出费:不收取退出费"
pattern1 =".*退出费:(.*?)[;。]" -----------》这个表达式只能获取str1里的“退出费”的值,但是获取不到str2的
pattern2 =".*退出费:(.*)"
values1 = re.findall(pattern1,str1)
values2 = re.findall(pattern2,str2)
print json.dumps(values1,ensure_ascii=False)----------------》能正常获取str1里的退出费的值:0
print json.dumps(values2,ensure_ascii=False)----------------》能获取值。但是与pattern1不兼容
目的:想写一个正则表达式,把所有str的指定参数的值都能获取到。求大神指点!谢谢!