以下是案例。我正在日志文件中寻找以下模式。
所有字符串都是AB_Nor的形式CDE_N。
AB和CDE是固定字母,后跟下划线。
N可以是 2 个或 3 个数字。
我试过(AB|CDE)_\d{2,3}了,但这会返回一个组。我不能这样做\w{2,3}\d{2,3},因为它必须是ABorCDE而不是ACor FEG。省略括号也会中断。我确信解决方案很简单,但我是 python 和正则表达式的新手,无法弄清楚。
以下是案例。我正在日志文件中寻找以下模式。
所有字符串都是AB_Nor的形式CDE_N。
AB和CDE是固定字母,后跟下划线。
N可以是 2 个或 3 个数字。
我试过(AB|CDE)_\d{2,3}了,但这会返回一个组。我不能这样做\w{2,3}\d{2,3},因为它必须是ABorCDE而不是ACor FEG。省略括号也会中断。我确信解决方案很简单,但我是 python 和正则表达式的新手,无法弄清楚。
正则表达式中括号内的A?:使其无法捕获。像这样:(?:AB|CDE)_\d{2,3}
请参阅此处的文档:http: //docs.python.org/3/library/re.html 大约三分之一的方法是通过非捕获语法。
非捕获组语法是(?:...). 就这样吧(?:AB|CDE)_\d{2,3}。这与其他所有内容一起记录在案。