Boost regex不匹配“\\s";到空间 我刚开始使用Boost和C++,我很难理解Boost的正则表达式引擎在匹配空白时的行为。如果我使用代码: boost::regex rx(" "); cout << regex_search(" ", rx); boost::regex rx(“”); cout

Boost regex不匹配“\\s";到空间 我刚开始使用Boost和C++,我很难理解Boost的正则表达式引擎在匹配空白时的行为。如果我使用代码: boost::regex rx(" "); cout << regex_search(" ", rx); boost::regex rx(“”); cout,c++,regex,boost,whitespace,boost-regex,C++,Regex,Boost,Whitespace,Boost Regex,明白了——我最初使用的是ascend4.org/Binary\u installer\u上的预构建库。在构建Boost1.52之后,代码按预期工作。试图缩短boost build过程,结果让我沮丧了几个小时。。。我现在已经吸取了教训 您缺少实际代码。写一个简短的程序来编译、运行和说明这个问题。。。我想知道这是否是我构建boost时的问题(在Windows7 32位上使用MinGW)。至少你已经确认了我对正则表达式的理解没有错,代码应该运行良好!boost的哪个版本和gcc的哪个版本?我怀疑你使用

明白了——我最初使用的是ascend4.org/Binary\u installer\u上的预构建库。在构建Boost1.52之后,代码按预期工作。试图缩短boost build过程,结果让我沮丧了几个小时。。。我现在已经吸取了教训

您缺少实际代码。写一个简短的程序来编译、运行和说明这个问题。。。我想知道这是否是我构建boost时的问题(在Windows7 32位上使用MinGW)。至少你已经确认了我对正则表达式的理解没有错,代码应该运行良好!boost的哪个版本和gcc的哪个版本?我怀疑你使用的是旧版本。
boost::regex rx("\\s");
cout << regex_search(" ", rx);
#include <boost/regex.hpp>
#include <iostream>

using namespace std;

int main()
{
    boost::regex rx("\\s", boost::regex::icase);
    cout << regex_search(" ", rx);
}