使用像FParsec這樣的庫來解析使用.NET語言中的純正則表達式的文本的優點是什麼?Fparsec vs正則表達式
1
A
回答
2
FParsec可以識別(至少)context-free grammars而正則表達式只能識別regular languages,至少在不使用有點冒險的擴展。
你不能用常規語言做的事情的一個例子是括號匹配,即跟蹤打開和關閉括號的數量並確保它們匹配。
當然,您可以通過重複使用它們來使用正則表達式來模擬此操作,但將行爲嵌入到單個分析器中會顯着更清晰。
+0
FParsec也會生成錯誤消息,並且如果您遵循某些準則(http://www.quanttec.com/fparsec/users-guide/performance-optimizations.html),FParsec解析器可能會更快...... –
相關問題
- 1. Java正則表達式組與。* vs正常正則表達式
- 2. 正則表達式。*? vs。*
- 3. String.startwith Vs正則表達式
- 4. PHP正則表達式@ VS/
- 5. Java正則表達式「[。]」vs「。」
- 6. 正則表達式vs String.Contains
- 7. (?=正則表達式)VS(?:正則表達式)
- 8. Python正則表達式vs PHP正則表達式
- 9. htaccess正則表達式vs php正則表達式
- 10. 正則表達式模式:split()vs find()
- 11. 正則表達式(正則表達式)
- 12. 正則表達式(正則表達式)
- 13. 正則表達式(正則表達式)
- 14. 正則表達式IsOne vs包含
- 15. Perl正則表達式vs解析
- 16. VS 2010中的正則表達式
- 17. 正則表達式:boost :: xpressive vs boost :: regex
- 18. 正則表達式在C++ 11 vs PHP
- 19. Python:正則表達式vs find(),strip()
- 20. 正則表達式 - Ruby vs Perl
- 21. Python的正則表達式VS Regex101
- 22. PHP VS JavaScript的正則表達式
- 23. Python vs PHP正則表達式
- 24. 正則表達式(\ S +?)vs(\ S +))
- 25. 正則表達式vs子串
- 26. 正則表達式VS while循環
- 27. Java vs Javascript正則表達式問題
- 28. 正則表達式強制VS可選
- 29. Spry框架VS正則表達式
- 30. HTML敏捷包vs正則表達式
爲什麼這是關閉的主要是基於意見的? FParsec(靈活性,性能等)或者沒有(在這種情況下答案是:沒有客觀的優勢)有客觀的優勢。 –