我正在制作一个项目,其中一部分是将python文件作为文本文件并使用正则表达式进行解析。
我能够很好地使用它(程序是一个包含换行符的代码的字符串):
findall(r"def (.*?)\((.*?)\)", program)
但是,当我希望它给出一个Match对象,其中.group()返回“ func1(None,None)”时,此行仅给出None
mainblock = search(r'if __name__ == "__main__":(.*?)#END', program)
我正在解析的python文件的缩写版本如下:
def func1(stuff, morestuff):
pass
if __name__ == "__main__":
func1(None, None)
#END
我已经检查了正则表达式本身是否存在差异,但找不到任何差异。我也尝试直接从代码文件复制/粘贴它,但仍然找不到匹配项