2012-01-24 5 views
2

ブーストトークンを使用して解析する際に基礎となる文字列のインデックス値を取得できるかどうかは疑問でした。ブーストのトークンを解析する際の基礎となる文字列のインデックス

word_count_lexerはここでブースト::精神:: LEX ::レクサー である私のサンプルコードです:

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) 

などと思っていましたが、これはこのタイプのため動作しません。

答えて

0

このトピックに関するディスカッションは、hereです。 最終的に私のアプローチを変更し、別の解析戦略を使用しました。

関連する問題