Ell*_*ron 2 c++ boost boost-spirit boost-spirit-qi
我正在使用boost::spirit::qi解析看起来像这样的"模板"格式:
/path/to/:somewhere:/nifty.json
Run Code Online (Sandbox Code Playgroud)
where :somewhere:表示由名称标识的任何字符串somewhere(名称可以是两个:字符之间的任何字符串).我有一个有效的解析器,但我想做一个额外的改进.
我想知道:somewhere:占位符后面的字符(在本例中为a /).但我的解析器的其余部分仍然需要知道这一点/并将其作为下一部分的一部分使用.
如何/在:somewhere:不实际使用它的情况下"读取" 后面的内容,以便解析器的其余部分可以看到它并使用它.
你在找
例:
myrule = lexeme [ *~char_(":") ] >> ":" >>
( (&lit('/') >> absolute_path)
| (relative_path)
)
Run Code Online (Sandbox Code Playgroud)