Регулярное выражение для строк в Bibtex - PullRequest
0 голосов
/ 18 апреля 2011

Я пытаюсь написать синтаксический анализатор Bibtex с помощью flex / bison. Вот правила для строк в bibtex:

  • Строки могут быть заключены в двойные кавычки "..." или в фигурные скобки {...}
  • В строке скобки могут быть вложенными
  • Внутри строки скобки должны быть сбалансированы (недопустимая строка: {это {тест})
  • Внутри "интернета" {} вы можете иметь любые символы. Таким образом, эта строка действительна: {Это строка {test "}, и она действительна}

Есть идеи, как это сделать?

1 Ответ

1 голос
/ 18 апреля 2011

Теперь вы попадаете в поле текстового парсера.Удивительно, но никто не создал библиотеку bibtex для Actionscript, которую я смог найти, поэтому это интересная проблема.Если вы сделаете один, сделайте одолжение сообществу и откройте его исходный код:)

Это будет непросто, так как вам по сути нужно идти за символом и проверять нужные вам символылогика вокруг этого.Тем не менее, я рекомендую вам взглянуть на реализацию assoncorelib синтаксического анализатора JSON , которая в некоторой степени похожа на то, что вы пытаетесь выполнить.По крайней мере, вы получите представление о том, как это сделать с помощью токенизатора, и это очень хорошее начало для вашего проекта.

Удачи.

...