Bibtex中字符串的正则表达式

时间:2011-04-18 09:48:23

标签: variable-assignment bison flex-lexer

我试图用flex / bison写一个Bibtex解析器。以下是bibtex中字符串的规则:

  • 字符串可以用双引号“...”或括号{...}
  • 括起来
  • 在字符串中,大括号可以嵌套
  • 在字符串中,大括号应该是平衡的(无效字符串:{this is a {test})
  • 在“互联网”{}内,您可以拥有任何字符。所以这个字符串是有效的:{这是一个字符串{test“},它是有效的}

关于如何做到这一点的任何想法?

1 个答案:

答案 0 :(得分:1)

现在你要进入文本解析器的领域。令人惊讶的是,没有人为我能找到的Actionscript创建一个bibtex库,所以这是一个有趣的问题。如果你做了一个,请给社区一个忙,并开源:)

要做到这一点并不容易,因为你必须逐字逐句地检查你需要的字符并围绕它做逻辑。但是,我建议您查看as3corelib's implementation of the JSON parser,这与您要完成的工作有些相似。你至少可以使用一个标记器来了解如何使用它,这对你的项目来说是一个非常好的开始。

祝你好运。