-1
我正在为崇高的文本编辑器(使用Python)编写一个插件,它只会折叠文件加载时的函数/方法。为了做到这一点,我必须解析文件内容,检测功能块并获取每个块的起始和结束位置(这是API进行折叠所需的)。正则表达式是我想到的第一件事,但我很快就知道它不适用于嵌套函数,特别是对于c风格的语法。解析代码来检测功能块
我现在正在这样做的方式是逐行查找'{'和'}',并检查函数定义是否位于同一行或上方'{'。如果找不到函数定义,我认为它是一个控制结构。这是远远不够完美的,因为注释中不匹配的大括号符号会导致此逻辑失败。这可能是完全这样做的错误方式,因为我不知道任何其他选项。有任何想法吗?
它们也将在条件和命名块中失败。 – 2013-04-24 02:41:53