作者:Sunny-阿坚 | 来源:互联网 | 2023-09-23 13:45
需求:一次匹配,匹配薪水 low 和 high
字段例子:
- 0.7-1 万 /元;我想要得到[0.7, 1]
- 7 万元;我想要得到[7]
- 0.7 万元;我想要得到[0.7]
- 13.88-20.5 万 /元;我想要得到[13.88, 20.5]
- 2-20.5 万 /元;我想要得到[2, 20.5]
- 1-20 万 /元;我想要得到[1, 20]
在正则表达式在线上( https://c.runoob.com/front-end/854 ) 用这个
能测试通过
但是使用
1
| python re.findall(pattern, str) |
得到结果却不尽如人意
例如:0.7-1 万 /元;我想要得到[0.7, 1]
1 2 3 4
| s = "0.7-1 万 /元"
p = "\d+(\.\d+)?"
print(re.findall(p, s))
# 得到[0, 7, 1] |
求助各位大伙,有无 python 一次匹配可以得到的方法,谢谢啦
([0-9\.]+)(?:-([0-9\.]+))?