Python sqlite使用regex更新表

Python sqlite使用regex更新表,python,regex,sqlite,Python,Regex,Sqlite,我有一个sqlite3表: id gross 1 $3,246,771 (USA) (12 April 1987),$3,189,948 (USA) (5 April 1987),$3,110,003 (USA) 2 $3,478 (USA) (3 August 1997),$3,344,136 (USA) 3 € 14,134 (Spain) 4 $3,150,000 (worldwide) 我想提取包含以下信息的数据: id gross 1

我有一个sqlite3表:

id    gross
1     $3,246,771 (USA) (12 April 1987),$3,189,948 (USA) (5 April 1987),$3,110,003 (USA)
2     $3,478 (USA) (3 August 1997),$3,344,136 (USA)
3     € 14,134 (Spain)
4     $3,150,000 (worldwide)
我想提取包含以下信息的数据:

id    gross
1     3246771
2     3478

有人知道如何做到这一点吗?

根据您提供的信息,您需要获取ID号,然后是第二列中以逗号分隔的第一个数字。对吗

无论哪种方式,使用
re
都应该很容易。假设您的数据位于名为
data
的类似文件的对象中

import re

pattern = re.compile(r'(\d+).+([0-9](?:,[0-9)+)*)')

print('id\tgross')
for line in data:
    match = pattern.search(line)
    if match:
        id, gross = match.groups()
        gross = gross.replace(',', '')
        print('{id}\t{gross}'.format(id=id, gross=float(gross))

.

您是否只是试图捕获一行中的第一个美元金额,而忽略其他金额?