要按交易日期、商户和金额提取正则表达式分组,可以使用Python的re模块来实现。下面是一个示例代码:
import re
transaction_data = '''
2022-01-01, Merchant A, $100.00
2022-01-02, Merchant B, $50.00
2022-01-02, Merchant C, $80.00
2022-01-03, Merchant A, $120.00
'''
pattern = r'(\d{4}-\d{2}-\d{2}), (.*?), (\$\d+\.\d{2})'
matches = re.findall(pattern, transaction_data)
for match in matches:
transaction_date = match[0]
merchant = match[1]
amount = match[2]
print(f"Transaction Date: {transaction_date}")
print(f"Merchant: {merchant}")
print(f"Amount: {amount}")
print()
上述代码中,使用了正则表达式(\d{4}-\d{2}-\d{2}), (.*?), (\$\d+\.\d{2})
来匹配日期、商户和金额。其中:
(\d{4}-\d{2}-\d{2})
用于匹配日期,格式为YYYY-MM-DD。(.*?)
用于匹配商户,使用非贪婪模式,以便在多个商户之间正确分组。(\$\d+\.\d{2})
用于匹配金额,格式为$XXX.XX。通过re.findall(pattern, transaction_data)
可以提取所有匹配项,并返回一个列表。
最后,使用循环遍历列表中的每个匹配项,将日期、商户和金额分别赋值给相应的变量,并进行打印输出。
运行上述代码,将得到以下输出:
Transaction Date: 2022-01-01
Merchant: Merchant A
Amount: $100.00
Transaction Date: 2022-01-02
Merchant: Merchant B
Amount: $50.00
Transaction Date: 2022-01-02
Merchant: Merchant C
Amount: $80.00
Transaction Date: 2022-01-03
Merchant: Merchant A
Amount: $120.00
这样就实现了按交易日期、商户和金额提取正则表达式分组的解决方法。
上一篇:按交替数字排序