Я просматривал документацию Boost.Spirit X3, которую смог найти — что не так уж много — и думаю, что хотел бы использовать это для моего следующего проекта парсинга. Примечательно, что я никогда не использовал Boost.Spirit Classic или V2, но использовал flex / bison и ANTLR.
Формат, который я ищу для разбора, в его самом простом смысле выглядит следующим образом:
unimportant
foo
bar
# BEGIN
parse this
...
# END
ignore this
Где только текст между «# BEGIN» и «# END» анализируется, а все остальное полностью игнорируется. Я пытаюсь найти эффективный способ сделать это в парсере X3. Некоторые идеи у меня были:
Образец в Использование Boost Spirit для разбора текстового файла и пропуска его больших частей относится и к X3:
Конечно, вы должны изменить его на свой вкус. Если вы ищете qi seek
На [SO] вы найдете больше образцов, некоторые из которых могут быть еще ближе к вашей цели.
Других решений пока нет …