每次在中找到某个字符串时停止RegEx

2024-09-25 10:17:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我用的是python3。 我有一个大的文本文件,里面有48条权力法则,我想把它设置成一次发一条给我的一个朋友,所以我需要用re.findall()把它们分成一个“章节”

每一章都从第1条、第2条、第36条等开始。有没有办法让正则表达式与第2条匹配,并在第2条出现时停止匹配

当我尝试类似于list=re.findall(r'(Law.+)Law)的方法时,它只是将整个文本文件放入列表[0]

提前感谢您的帮助


Tags: 方法re列表朋友python3list文本文件章节
3条回答

试试正则表达式:^Law \d+.*?(?=Law \d|\Z)

Demo

怎么样

matches = re.split('Law [0-9]+', data)
chapters = matches[1:]
Law [0-9](.*?)(Law [0-9])+

这有可能帮你走上正轨吗

相关问题 更多 >