如何打印std::regex
的字符串表示?
说我有一组模式,我想打印第一个匹配的模式:
std::vector<std::regex>> patterns = Get();
for (auto pattern: patterns){
if (std::regex_match("file.txt",pattern)){
std::cout << "matched on pattern: " << /* ? pattern ? */ << '\n';
}
}
std::cout
无效std::regex
。
似乎没有任何方法来获取字符串表示。
我们是否应该单独携带一个字符串,或者我在文档中遗漏了什么?
答案 0 :(得分:3)
似乎没有任何方法可以获得字符串表示。
正确。甚至没有指定std::regex
甚至以您给出的形式保存表达式,如果实现决定使用更优化的格式,则可能就是这种情况。