簡體   English   中英

您是否了解Qt中的任何詞法分析器或詞法分析器?

[英]Are you aware of any lexical analyzer or lexer in Qt?

您是否了解Qt中的任何詞法分析器或詞法分析器? 我需要它來解析文本文件。

QXmlReader允許您定義詞法處理程序,對於純文本,您可以使用QRegExp 如果你想要一個完整的詞法分析器,請看一下Quex (不是Qt特定的,但用於根據你的輸入生成一個C ++代碼)。

有趣的是,Qt如何演變成一個全羅盤框架,使得使用它的程序員相信任何有用的東西都必須以字母Q開頭。非常有點網絡。 Qt只是一個在該語言之上運行的類庫,它不排除使用日常庫來完成工作。 特別是當這是一個與呈現用戶界面幾乎沒有關系的庫時,Qt的工作做得很好。

有許多庫可以很好地進行詞法分析和解析。 首先是Lex和Yacc,Flex和Bison,等等。 你只需要Qt啟用它來獲取錯誤消息,他們很樂意支持它。

如果你可以使用它......(如果你問我的話,它會非常復雜!)有來自boost的Spirit庫。

這可以“動態”使用,因為它不會生成您必須編譯以運行解析器的其他文件。

http://www.boost.org/doc/libs/1_48_0/libs/spirit/doc/html/spirit/lex.html

但它很復雜(我的觀點)因為即使只是#include也不總是正常工作(如果你把它們包含在錯誤的順序中或文檔可能與教程不匹配,我不太確定。)然而,我看到很多人使用它!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM