我想知道在使用boost令牌进行解析时是否可以获取底层字符串的索引值。
word_count_lexer是一个boost :: spirit :: lex :: lexer 这是我的示例代码:
base_iterator first = str.begin();
base_iterator last = str.end();
lexer_type::iterator_type iter = word_count_lexer.begin(first, last);
lexer_type::iterator_type end = word_count_lexer.end();
while (iter != end && token_is_valid(*iter)) {
if(iter->id() == ID_WORD) {
std::cout << iter->value() << std::endl;
}
++iter;
++w;
}
我想要完成的事情:在我的while循环中,我希望能够访问匹配的索引。我在想像
std::distance(str.begin(), it)
但由于它的类型,这在这里不起作用。