我看到了一个匹配网址的正则表达式:/^\/users?(?:\/(\d+)(?:\.\.(\d+))?)?/
。我对每组比赛开始时?:
的使用感到困惑。
这是什么意思?
答案 0 :(得分:9)
(?:)
(()
是表达式的一部分)是非捕获组。
答案 1 :(得分:5)
这是一个非捕获组,因此如果匹配则不会捕获特定组。
答案 2 :(得分:1)
通读:http://docs.python.org/library/re.html
(?:...)
常规括号的非捕获版本。匹配括号内的正则表达式,但在执行匹配后或在模式中稍后引用时,无法检索组匹配的子字符串。