使用像FParsec这样的库来解析文本比使用来自.NET语言的普通正则表达式有什么好处?
发布于 2014-02-10 12:54:34
FParsec可以识别(至少) 上下文无关文法,而正则表达式只能识别正规语言,至少没有使用一些恶意扩展。
用常规语言无法做到的一个例子是括号匹配,即跟踪开始和结束括号的数目,并确保它们匹配。
当然,您可以通过重复使用正则表达式来模拟这一点,但是将行为嵌入到单个解析器中则要干净得多。
https://stackoverflow.com/questions/21677713
复制相似问题