我对 boost::regex 有疑问,此解决方案仅适用于每场比赛的一个结果
boost::regex regex("id=\"(.*?)\""); // should I use this "id=\"(.*?)\"(.*?)<value>(.*?)</value>"?
boost::sregex_token_iterator iter(xml.begin(), xml.end(), regex, 1); // 1 because I just need text inside quotes
boost::sregex_token_iterator end;
现在解析字符串
<x id="first">
<value>5</value>
</x>
<x id="second">
<value>56</value>
</x>
etc...
现在的问题是如何同时解析 id 和 value 以在匹配循环中获取它们
for( ; iter != end; ++iter ) {
std::string id(iter->first, iter->second);
std::string value(?????);
}