Python 正则表达式匹配失败

,我有一个.sql脚本文件,我想批量的提取里面的表名和备注,findall()函数里的正则表达式应该如何编写?
图片内容只是其中一小部分,单独提取后面的的备注和前面的表名,我都成功了,就是两者一起提取就失败了。

讨论数量: 3

你可能需要使用re.S标志位,或者在正则表达式开头使用(?s)。以此启用点号(.)匹配换行符的特性。

3年前 评论
Jason990420
a = re.findall(r"""DROP TABLE IF EXISTS '(.*?)';.*? COMMENT='(.*?)'""", text)
3年前 评论

感谢各位,已经有正确答案 pattern = re.compile(r"CREATE TABLE (.+?)[\s\S]*?COMMENT='(.+?)'")

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!