Python正则表达式输出多个匹配项

时间:2020-03-05 12:56:24

标签: python regex python-3.x regex-group

我有以下示例文本:

60CC
60 cc
60cc2
60CC(2)

和以下正则表达式以匹配这些实例:

(60\s?(cc)(\w|\(.\)){0,5})

但是对于第一个比赛,我的输出如下:

    Match 1
1.  60CC
2.  CC
3.  None

可以在以下位置查看此示例:https://pythex.org/?regex=(60%5Cs%3F(cc)(%5Cw%7C%5C(.%5C))%7B0%2C5%7D)&test_string=60CC%0A60%20cc%0A60cc2%0A60CC(2)&ignorecase=1&multiline=0&dotall=0&verbose=0

如何将输出限制为仅#1?

我正在使用Python Regex。 我的python代码的片段是:

re.findall("(60\s?(cc)(\w|\(.\)){0,5})", text, flags=re.IGNORECASE)

1 个答案:

答案 0 :(得分:2)

如何将输出限制为仅#1?

您可以从findall / finditer结果中忽略不相关的组。

或者,将 non-captureing 组用于您不关心的位:just add ?: after the leading parenthesis,这样,您仍可以使用分组功能(例如交替)而不会捕获组(拆分)在结果中。

相关问题