Я играю с Boost Xpressive и у меня возникают проблемы со следующим фрагментом
#include <iostream>
#include <string>
#include <boost/xpressive/xpressive.hpp>
using namespace std;
using namespace boost::xpressive;
int main()
{
string s("123");
sregex rex = _d;
rex >>= _d;
smatch what;
regex_search(s, what, rex);
cout << "Match: " << what[0] << endl;
return 0;
}
Результатом запуска этой программы является совпадение 1
в отличие от ожидаемого 12
. Имеет ли sregex::operator>>=
другое значение / использование, которое я предполагал интуитивно? Я ожидал, что это приведет к sregex
, аналогичному _d >> _d
.