python正则表达式

求问正则表达式
例如, 如水电费23.456.3经 颠倒是非答复4.23 得 dsfd2

我想要达到的结果
只匹配4.23,不要匹配23.456.3

赞同楼上说的,首先要给出要提取数据的特点,如果特点就是数根据小数点位数,或者就这一问题来写可以这样

img

import re
string = "如水电费23.456.3经 颠倒是非答复4.23 得 dsfd2"
string = re.sub(r"\d+\.\d+\.\d+", "", string)
res = re.findall(r"\d+\.\d+", string)
print(res)



首先就是正则表达式是规则匹配,你这个是什么规则,比如我要匹配数字,然后我要匹配数字的前四位,你这个匹配前面的什么非答复是没有逻辑的,难道你的语句都是这样的吗,那你完全可以这么匹配:result = re.search('复.\d*得', str).group()

你可以参考下这篇文章:Python正则表达式
同时,你还可以查看手册:python-re --- 正则表达式操作 中的内容