正则表达式和OR运算符没有在Python中分组?
这里是情况。我正在寻找日志文件中的以下模式。正则表达式和OR运算符没有在Python中分组?
所有字符串的形式为AB_N或CDE_N。 AB和CDE是固定字母,后跟下划线。 N可以是2或3的数字。我试过(AB|CDE)_\d{2,3}但是返回一个组。我不能做\w{2,3}\d{2,3},因为它必须是AB或CDE而不是AC或FEG。省略括号也会打破。我相信解决方案很简单,但我是python和正则表达式的新手,无法弄清楚。
回答:
A ?:在正则表达式中的括号内使其无法捕获。像这样:(?:AB|CDE)_\d{2,3}
请参阅文档:http://docs.python.org/3/library/re.html 大约三分之一的方式通过它覆盖非捕获语法。
回答:
非捕获组语法是(?:...)。那么做(?:AB|CDE)_\d{2,3}。这是documented以及其他一切。
以上是 正则表达式和OR运算符没有在Python中分组? 的全部内容, 来源链接: utcz.com/qa/263078.html

