Python 正则表达式中的"?:"是什么意思?
pythonserver side programmingprogramming
非捕获组
如果我们不希望组捕获其匹配项,我们可以将此正则表达式写为 Set(?:Value)。问号和左括号后的冒号是创建非捕获组的语法。
正则表达式 Set(Value)? 匹配 Set 或 SetValue。在第一种情况下,第一个(也是唯一的)捕获组保持为空。在第二种情况下,第一个捕获组匹配 Value。出现在末尾的问号是使前一个标记可选的量词。
Set(?:Value) 匹配 Setxxxxx,即所有以 Set 开头但不以 Value 结尾的字符串。这些将是非捕获组。
color=(?:red|green|blue) 是另一个具有非捕获组的正则表达式。此正则表达式没有量词。
支持命名捕获的正则表达式风格通常有一个选项,可以将所有未命名的组变成非捕获组。
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

