將代碼解析爲組件
回答
Antlr是一個很好的工具,可以與多種語言一起工作,具有良好的文檔和包含語言的許多示例語法。
你也可以去老派並使用Yacc和Lex(或者GNU版本的Bison和Flex),它在生成解析器方面有很好的book,以及經典的dragon book。
然而,這可能是矯枉過正,你可能只想使用Ruby甚至Javascript。
非常感謝,Antlr就是我正在尋找的:) –
你提到兩個不同的任務:
- 重構代碼爲模塊化組件
- 運行靜態代碼分析,得到代碼度量。
我建議:
- ReSharper的,作爲頂級代碼重構工具,在那裏(假設你是一個.NET傢伙)
- NCover和NDepend的靜態代碼分析。你會得到#代碼,圈複雜性,抽象與不穩定圖..所有的酷東西。
看着OP的發帖歷史,他不是一個NET傢伙。 –
是的,我明白了。不幸的是,並非每個機構都明確界定了他們問題的參數因此,一些答案肯定會被取消。 –
同意。這就是爲什麼國際海事組織最好在提出澄清問題之前回答一個太過於開放的猜測問題。 –
- 1. 將URL解析爲組件
- 2. 將.NET代碼解析爲調用樹
- 3. 如何將TypeScript代碼解析爲AST
- 4. 正則表達式將短代碼解析爲數組
- 5. SFML解析事件代碼
- 6. 解析代碼
- 7. 將C++ CSV文件解析爲數組
- 8. 將文件解析爲數組
- 9. ASP.NET如何將ASPX文件解析爲可執行代碼?
- 10. 將值解析爲數組
- 11. 解析解碼JSON數組爲CSV
- 12. 解析HTML代碼
- 13. gcc解析代碼
- 14. Qt代碼解析
- 15. 解析雲代碼替代
- 16. 將數組解析爲多維數組
- 17. 網頁將無法解析PHP代碼
- 18. 解析Json解析的代碼如何?
- 19. 將組件轉換爲機器代碼
- 20. 未將數組複製到解析雲代碼
- 21. (()=> {})();在PhpStorm中解析代碼爲
- 22. JSoup爲Webview解析HTML代碼
- 23. 解析JavaScript代碼爲響應
- 24. 爲javascript代碼編寫解析器
- 25. 爲什麼Jericho解析器不能解析這個HTML代碼?
- 26. 將正則表達式中的捕獲組解析爲樹的代碼
- 27. 用於文件解析的perl代碼
- 28. 解析代碼文件中的#區域
- 29. .Net庫解析源代碼文件?
- 30. 解析.TXT C代碼文件
這有點模糊,國際海事組織。你能解釋一下你要解析的語言嗎?你能告訴你要用什麼語言進行解析?你能否更多地瞭解你想要獲得的「統計數據」?什麼是代碼行(是否以'\ n'或以';'結尾)?什麼是「條件陳述的位置」_? –
如果他只想得到一些粗略的統計數據,那麼讀取/計數行(「條件語句的位置」)和一些醜陋的正則表達式的Perl腳本應該接近。 –
我不確定在問題中什麼不明確? 我有代碼,我需要解析它,將其轉換爲XML結構,然後我可以對它做一些統計,這就是全部! –