C++正则表达式替换第一个匹配项

C++ regex replace first match

本文关键字:第一个 正则表达式 替换 C++      更新时间:2023-10-16

我试图编写一个类似Java的Matcher::replaceFirst(String replacement)的方法。我知道如何用std::regex_replace替换std::string中的所有匹配项,但如何只替换字符串中正则表达式的第一个匹配项?

您可以使用带有附加标志std::regex_constants::format_first_onlystd::regex_replace来获得所需的结果。

看看http://en.cppreference.com/w/cpp/regex/regex_replace以获取更多信息。

您仍然可以通过将format_first_only指定为std::regex_replace()的标志参数的参数来使用std::regex_replace

看这里http://en.cppreference.com/w/cpp/regex/match_flag_type