如何打印std::regex ?

How do you print a std::regex?

本文关键字:std regex 打印 何打印      更新时间:2023-10-16

如何打印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::coutstd::regex不起作用。

似乎没有任何方法来获得字符串表示。

我们是否期望单独携带字符串,或者我在文档中遗漏了什么?

似乎没有任何方法来获得字符串表示。

正确的。它甚至没有指定std::regex甚至以您给它的形式保存表达式,如果实现决定使用一些更优化的格式,可能就是这种情况。