Python正则匹配'>250'表达式后的浮点数方法问询
提取'>250'后浮点数的正则方案
你需要把\S+替换成匹配整数或浮点数的表达式\d+(\.\d+)?,最终可用的正则表达式为:>250\s+\d+(\.\d+)?
正则各部分说明:
>250:精准匹配目标固定字符串\s+:匹配'>250'之后的一个或多个空格\d+:匹配至少一位数字(整数部分)(\.\d+)?:可选的小数部分,\.匹配小数点,\d+匹配小数位,?表示这部分可不存在(支持整数形式)
Python代码示例:
import re text = "word word 150 175 200 225 >250 12.3 word word >250 45 word" # 带捕获组的正则,直接提取数字部分 pattern = r'>250\s+(\d+(\.\d+)?)' matches = re.findall(pattern, text) # 整理提取到的数字 result = [num[0] for num in matches] print(result) # 输出: ['12.3', '45']
如果需要支持带负号的数字(比如'>250 -12.3'这种场景),可以把正则调整为:>250\s+(-?\d+(\.\d+)?)
内容的提问来源于stack exchange,提问作者oettam_oisolliv
相关产品推荐
相关产品推荐

