如何使用python正则表达式获取两个模式之间的所有内容?

时间:2018-12-08 10:49:30

标签: python regex python-3.x

以下内容是我拥有的文件:

>AWFG:AW as EWFA
ASEGEGAGWGEAH
AWGGWAHEDSFH
AWFGHWF
>XWAF:AE SEQUEL
ADAFFAGAWAFAFWFGAGWAWDDA
ADWFWAGAWDAASASFAWGAFWGG
AWFAGAWWGGAWGGW
>YADF:ADthe  AFWFGA
WADGGGWAGAWWGGAW

在此文件中,我需要获得如下输出:

>XWAF:AE SEQUEL
ADAFFAGAWAFAFWFGAGWAWDDA
ADWFWAGAWDAASASFAWGAFWGG
AWFAGAWWGGAWGGW

现在我想通过匹配模式>XWAF:AE作为开始模式和所有内容直到下一个>结束模式来获得上述输出。

我尝试了许多可能的方法,但是由于我是python的初学者,所以很长一段时间都无法解决该问题。

1 个答案:

答案 0 :(得分:0)

您可以尝试

^>XWAF:AE[\w\W]*?(?=>)
  

说明

  • ^-字符串开头的锚点。
  • >XAWF:AF-匹配>XAWF:AF
  • [\w\W]*?-匹配零个或多个时间的任何字符(惰性模式)。
  • (?=>)-正面前瞻匹配>

Demo