REGEX将字符串重新编译为python中的一个组

时间:2017-07-12 22:10:14

标签: python

我正在尝试使用re.compile解析字符串。

有问题的字符串格式如下:

"Sq123ABCd_A010_Department_v01.0101.exr"

使用re.compile我想返回此

('Sq123ABCd_A010','_Department_','v01.','0101','.exr'')

到目前为止,我有这个:

match = re.compile('^(.*?)(\S)(\d+)\.(.*?)$').match(fname)
match.group()

返回:

('Sq030ION_S010_Lighting_', 'v', '002', '0101.exr')

1 个答案:

答案 0 :(得分:0)

我相信这就是你要找的东西:

In [208]: text = 'Sq123ABCd_A010_Department_v01.0101.exr'

In [231]: baseName, dept, version, frameNum, fileType = re.findall(r'(.*?_.*?)_(.*)_(.*?\.)(.*?)(\..*)', text)[0]

In [232]: baseName, dept, version, frameNum, fileType
Out[232]: ('Sq123ABCd_A010', 'Department', 'v01.', '0101', '.exr')