此代码段:
smatch m;
auto a = regex_search ("uyiu #23->45 kjlk", regex ("->"));
auto b = regex_match ("uyiu #23->45 kjlk", m, regex ("->"));
cout << a << " " << b;
产生(在 VS2012 C++ 中):
1 0
和 m
是空的。为什么不是 1 1
?
最佳答案
来自 regex_match 的文档:
整个目标序列必须与此函数的正则表达式匹配才能返回 true。
关于c++ - VS2012 C++ 中奇怪的正则表达式行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15915659/