正则表达式OR在python中查找

时间:2015-02-27 15:58:22

标签: python regex findall

我正在尝试使用regualr表达式

re.findall("void (D|S)TC_.+\(\)", testCaseFile)

我的期望是上面的表达式返回列表

void DTC_Sample_01()
void STC_Sample_02()

但它应该忽略

void ZTC_Sample_03()或任何其他。

但它没有按预期工作

1 个答案:

答案 0 :(得分:3)

您使用的括号告诉findall()匹配模式并返回括号内容。使用?:,你就像以前一样匹配模式,而是获得整个匹配。

re.findall("void (?:D|S)TC_.+\(\)", testCaseFile)