Tra*_*rks 11 regex capture-group c++11
我正在将基于boost的正则表达式转换为C++ 11正则表达式.我有一个名为的捕获组url:
\s*?=\s*?(("(?<url>.*?)")|('?<url>.*?)'))
Run Code Online (Sandbox Code Playgroud)
有了提升,如果你有一个,smatch你可以打电话match.str("url")来获取名称的捕获组.有了std::smatch,我只看到索引的子匹配.
如何使用std :: smatch类访问url捕获?
您不能使用c ++ 11标准命名捕获组.C++ 11正则表达式符合ECMAScript语法.这是一个解释所有http://www.cplusplus.com/reference/regex/ECMAScript/的链接.即使这可能令人失望,如果你想到它,一个真正的正则表达式将不支持它,这是额外的.