8

我看到一个正则表达式来匹配一个 URL: /^\/users?(?:\/(\d+)(?:\.\.(\d+))?)?/。我?:对每场小组赛开始时的用法感到困惑。

那是什么意思?

4

3 回答 3

10

(?:)()是表达式的一部分)是一个非捕获组

请参阅http://www.regular-expressions.info/refadv.html

于 2012-06-28T10:17:59.517 回答
5

这是一个非捕获组,因此如果进行匹配,则不会捕获该特定组。

http://www.regular-expressions.info/refadv.html

于 2012-06-28T10:17:39.373 回答
1

通读:http ://docs.python.org/library/re.html

(?:...)

常规括号的非捕获版本。匹配括号内的任何正则表达式,但组匹配的子字符串在执行匹配后无法检索或稍后在模式中引用。

于 2012-06-28T10:18:15.190 回答