C++ (Qt) qi::symbols<char const, char const> sp_ch; sp_ch.add( "\\%", '%' ); key = +( ( sp_ch | qi::char_ ) - qi::char_(",{}%") );
C++ (Qt)expr = qi::lexeme[qi::lit("\\cite")] >> '{' >> key[ ph::bind(&add_unique_key<Container>, qi::_1, ph::ref(container)) ] % ',' >> '}' | (sp_ch | qi::char_) ;