在Python中使用正则表达式设置宏模式

在Python中使用正则表达式设置宏模式,python,regex,macros,pattern-matching,Python,Regex,Macros,Pattern Matching,我正在解析50多个源文件,其中一些包含宏函数。 我已经定义了一个FunctionCall,我可以检查程序行是否是函数调用,但是宏没有,我也没有宏集合。可以检查FunctionCall,因为函数名后面紧跟着开头。我拥有的宏示例: TimerRetrigger_RTE_Uint8Uint8Uint16_Uint16Uint8 ( tmp3_ui8, tmp0_ui8, Mon2_T2KeyStrt_P, tmp4_ui1

我正在解析50多个源文件,其中一些包含宏函数。 我已经定义了一个FunctionCall,我可以检查程序行是否是函数调用,但是宏没有,我也没有宏集合。可以检查FunctionCall,因为函数名后面紧跟着开头。我拥有的宏示例:

TimerRetrigger_RTE_Uint8Uint8Uint16_Uint16Uint8
        (
        tmp3_ui8,
        tmp0_ui8,
        Mon2_T2KeyStrt_P,
        tmp4_ui16,
        tmp1_ui8
        );

是否有办法设置模式(例如使用regex)并检查程序行是否为宏?e、 g.如果该行是字符串,而下一行包含一个开口,则这些?我已经编辑了源文件,并在函数名旁边找到了开头部分,但很遗憾,我不应该修改源文件。

您在正则表达式中使用该标志吗?在正则表达式中尝试了DOTALL,但它似乎仍然忽略了行,只进行函数调用。问题是,我告诉我的正则表达式匹配程序行,这就是为什么我不理解python如何解释宏或编译器如何处理宏。现在我面临着与Castsar相同的问题,你是否在正则表达式中使用该标志?在正则表达式中尝试了DOTALL,但它似乎仍然忽略了行,只接受函数调用。问题是,我告诉我的正则表达式匹配程序行,这就是为什么我不理解python如何解释宏或编译器如何处理宏。现在我面临着同样的问题