【发布时间】:2023-03-23 07:43:02
【问题描述】:
我得到了 db,其中表中记录的字段之一包含字符串形式的价格。 字符串本身没什么大不了 - 但价格完全没有格式:
$12,000.50
$3.50
From $3.50 to $12,000.50
我想得到的是:
12000.50
3.50
3.50
从所有“$”和“,”中去掉它,只留下两位的第一个数字
我编写了这段代码,它适用于第一个示例,但最后一个失败(sqlite 语法错误 - 显然它给了我两个数字)
代码如下:
for every_line:
found=re.findall(r"\d.\.?",every_line[9])
db_cursor.execute("UPDATE MAINTABLE SET Price="+"".join(found)+" WHERE Id="+str(every_line[0]))
db_connection.commit()
其中 every_line[0] 是索引字段,[9] 是价格字段
我怎样才能使它更高效(有或没有正则表达式)、更简单和更通用?
提前谢谢你
【问题讨论】:
标签: python regex string formatting