Существуют ли какие-либо методы Haskell для смешанного (частично структурированного, частично неизмененного текста) анализа и перезаписи? - PullRequest
25 голосов
/ 20 ноября 2011

Пример задачи : я хочу написать скрипт на Haskell, который будет выделять (например, \fbox) первое вхождение математических символов в документе. Надеюсь, это поможет мне убедиться, что я все представил.

  • Регулярные выражения неуместны, так как они не будут знать, что находится в математическом режиме и т. Д., Не имеют логики для подсчета вещей или не знают, что переменная из следующего \section на самом деле является новой переменная.

  • Я также не хочу писать парсер для всех LaTeX. Кажется, вероятность ошибок высока, и я действительно хочу написать сценарий, а не коммерческую программу.

Я написал смешанный парсер - тот, который получил некоторую структуру и сохранил остальное в виде текста, в ответ на вопрос здесь. [ Как вы используете жадный парсек? ]. Но мой подход был громоздким. Есть ли лучший, более формальный способ?

1 Ответ

2 голосов
/ 26 ноября 2011

Возможно, вы захотите взглянуть на библиотеку Pandoc на Hackage для анализа Latex. Это позволит вам анализировать, изменять и печатать как латекс, так и множество других форматов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...