【发布时间】:2019-09-20 17:14:13
【问题描述】:
import re
s = 'words here plus num A18-11186 B7 and Q12-45786 D3'
我有以下字符串,我想使用正则表达式提取A18-11186 B7 和Q12-45786 D3。我已经尝试了以下
reg = r'\b(?=\d*[A-Z])((?:[A-Z0-9]+-)(?:\d+-)?\d+)\b'
r1 = re.findall(reg,s)
这给了我
['A18-11186', 'Q12-45786']
这与我想要的很接近,只是它缺少空格、字母和数字。
如何更改我的reg 以获得所需的输出?
想要的输出
['A18-11186 B7', 'Q12-45786 D3']
【问题讨论】:
标签: python regex python-3.x string text