所有的Python正则表达式都为一个空白lin

2024-05-14 21:20:30 发布

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

我正在寻找一种正则表达式的方式,将我的所有东西在一段文字到第一个空白行。我有以下内容:

reg = r'((Opposition|Oppose):?\s*)(.*?)\n\n'
str1 = """Opposition


          California Attorneys for Criminal Justice
          Californians for Safety and Justice
          Drug Policy Alliance
          Friends Committee on Legislation of California
          Legal Services for Prisoners with Children


           Analysis Prepared  
"""

str2 = """Oppose:   None received

                                      -- END --

                                      """

当我跑步时:

^{pr2}$

我得到:

      California Attorneys for Criminal Justice
      Californians for Safety and Justice
      Drug Policy Alliance
      Friends Committee on Legislation of California
      Legal Services for Prisoners with Children

但当我跑的时候:

match = re.search(reg, str2, re.DOTALL)
print match.group(3)

我得到:

   None received
                                      -- END --

第一个字符串的结果是正确的,但我希望从第二个字符串得到的结果是“None received”。我想不出一个很好的解释为什么我也会得到“--END--”。我的正则表达式是否应该在“没有接收到”以及“空行”上的“n”和“停止”之后匹配\n?任何帮助都将不胜感激


Tags: andnoneforregendreceivedsafetycalifornia

热门问题