why boost::regex_match returns me always false?
很明显这里必须我匹配,但是这段代码仍然返回false。
1 2 3 4 5 6 7 8
| #include <iostream>
#include <boost/regex.hpp>
using namespace std;
using namespace boost;
int main() {
cout << regex_match("some text", regex("text")) << endl;
} |
- 我不知道这个 regex_match 函数,但它可能会使用 ^ 和 $ 自动锚定模式。尝试使用 .*text。
-
@sp00m 是的,用 regex(".*text") 替换 regex("text") 也会匹配,因为它涵盖了完整的输入 "some text"。 (但是,regex_search 是一种简单的方法。)
regex_match 必须匹配所有给定的字符序列。请尝试 regex_search。
- 谢谢,stackoverflow.com/questions/11628047/…