Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python正则表达式并多次查找_Python_Regex - Fatal编程技术网

Python正则表达式并多次查找

Python正则表达式并多次查找,python,regex,Python,Regex,我对正则表达式有点问题 我想在我的文本中找到所有的“文章”内容。 两篇文章之间可能有一个“章节”,但目前我通过了它 这是我的文本(没有\n): 第1章法律、法律和法律, 瓦里乌斯a、森佩尔·康格、尤伊斯莫·农、密苏里州。Proin PortTitor第2章用户界面 arcu在pedeArticle 2目前的blandit odio eu eArticle 3 Pellentesque中 这是奥古斯特·布兰迪特苏打啤酒。第一同侧前庭 虎皮浮雕 要获得多个匹配,我想我必须使用findall()。 但

我对正则表达式有点问题

我想在我的文本中找到所有的“文章”内容。 两篇文章之间可能有一个“章节”,但目前我通过了它

这是我的文本(没有\n):

第1章法律、法律和法律, 瓦里乌斯a、森佩尔·康格、尤伊斯莫·农、密苏里州。Proin PortTitor第2章用户界面 arcu在pedeArticle 2目前的blandit odio eu eArticle 3 Pellentesque中 这是奥古斯特·布兰迪特苏打啤酒。第一同侧前庭 虎皮浮雕

要获得多个匹配,我想我必须使用findall()。 但我的小正则表达式不起作用:

re.findall(r"""Article\s(?P<number>\d+)(?P<content>.*)""",content,re.UNICODE)
re.findall(r”““Article\s(?P\d+)(-P.*)”,内容,re.UNICODE)
content参数获取所有我的文本。我想这是因为有* 那么正则表达式如何在我的文本中匹配多次呢? 我不必使用findall()或者我的正则表达式无效

所以如果有人有主意的话, 谢谢

Ps:我只想通过使用正则表达式来实现这一点,以便继续。

可以。您可以从所有匹配项中提取文本组


您还可以看到示例。

您需要吞下所有内容,直到找到
文章或输入结束。这可以使用惰性量词,然后进行积极的前瞻测试来完成:

re.findall(r"""Article\s(?P<number>\d+)(?P<content>.*?)(?=Article\s|$)""",content,re.UNICODE)
^(?P<number>\d+)(?P<content>.*)$