Fparsec与正则表达式

时间:2014-02-10 12:50:12

标签: regex fparsec

使用像FParsec这样的库来使用.NET语言中的普通正则表达式解析文本有什么好处?

1 个答案:

答案 0 :(得分:2)

FParsec可以识别(至少)context-free grammars,而正则表达式只能识别regular languages,至少不使用一些hacky扩展。

使用常规语言无法做到的一个例子是括号匹配,即跟踪开始和结束括号的数量,并确保它们匹配。

当然,您可以通过重复使用它们来使用正则表达式来模拟它,但是将行为嵌入到单个解析器中会非常清晰。