【发布时间】:2020-10-20 12:07:08
【问题描述】:
我有一个列表input:
['ICE ERIE', 'ERIE', 'o9 ManGo', 'ManGo SLACKCURRAN 120mL', 'SLACKCURRAN']
如何从中提取以下字符串:
'ManGo SLACKCURRAN 120mL'
另一个例子:
Input:
['SWANSON', 'Apple Cider Vinegar Food Supplement Supplement mg per tablet DOUBLE STRENGTH FORMULA per tablet 1 NET', 'Cider', 'Vinegar', 'Food Supplement DOUBLE', 'Supplement', '200', 'per', 'tablet', 'DOUBLE', 'TABLETS 1 NET WEIGHT: 62g', '1', 'NET', 'WEIGHT:']
Output:
'TABLETS 1 NET WEIGHT: 62g'
我的尝试:
import re
l = []
for each in input:
elif re.match('^\\d+\\.?\\d*(ounce|fl oz|foot|sq ft|pound|gram|inch|sq in|mL)$',each.lower()):
l.append(each)
else:
pass
【问题讨论】:
-
您能否展示更多的输入和输出?
-
输入:['SWANSON', 'Apple Cider Vinegar Food Supplement Supplement mg per tablet 双倍强度配方每片 1 NET', 'Cider', 'Vinegar', 'Food Supplement DOUBLE', 'Supplement ', '200', 'per', 'tablet', 'DOUBLE', 'TABLETS 1 NET WEIGHT: 62g', '1', 'NET', 'WEIGHT:'] 输出:'TABLETS 1 NET WEIGHT: 62g'
-
考虑接受我的编辑
标签: python-3.x regex pattern-matching