python 正则表达式 提取数据中的负数和正数

这是一个BUG记录
我想提取的数据 格式大概是这样的 “-128%” 或者是 128%

def findElement(original,suffix):
    element = re.findall(suffix,original, re.S)
    if element == []:
        return ""
    else:
        return element[0]

一开始我写成了只提取数字 结果没法提取到数字的正负

findElement(line[4],"(\d+)%")

应该改为

findElement(line[4],"^(\-?\d+)%")

‘? ‘ 代表前面的负号可能出现一次或者零次

在这里插入图片描述

Reference:
https://www.runoob.com/regexp/regexp-syntax.html


版权声明:本文为weixin_39986534原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。