跨多行findall的Python正则表达式

跨多行findall的Python正则表达式,python,regex,Python,Regex,我正在尝试解析具有以下布局的文档。目的是找出与“香港案件/判决/1946-1972”和“高等法院”的所有界线 我的尝试代码如下: import re name = raw_input("Enter file:") if len(name) < 1: name = "1946-1980,1982.txt" handle = open(name) for line in handle: line = line.rstrip() if re.findall("\bHong

我正在尝试解析具有以下布局的文档。目的是找出与“香港案件/判决/1946-1972”和“高等法院”的所有界线

我的尝试代码如下:

import re 
name = raw_input("Enter file:")
if len(name) < 1: name = "1946-1980,1982.txt"
handle = open(name)

for line in handle: 
    line = line.rstrip()
    if re.findall("\bHong Kong Cases/Judgments/1946-1972.*HIGH COURT\b",line, re.DOTALL):
        print line
==========================

Hong Kong Cases/Judgments/1946-1972 HKC/ATTORNEY GENERAL v CHAN WAH -
[1946-1972] HKC 684 - 20 April 1971


                                                                     8 pages



           ATTORNEY GENERAL v CHAN WAH - [1946-1972] HKC 684



HIGH COURT
re.findall("\bHong Kong Cases/Judgments/1946-1972.*HIGH COURT\b",line, re.DOTALL)
删除
^
并添加
\b
以获取所有匹配项

见演示


(=匹配您的字符串)。您预期的输出是什么?此处的
line
是什么。您能否分享一下您是如何应用
re的。findall
预期的输出就是上面列出的图像。在我试图解析的文档中有很多这样的内容。最终目标是计算此文本模式出现的次数。但是,当我试图打印上面的内容以检查它是否返回了正确的文本块时,它什么也不返回?在听取vks的意见后,上面列出了完整的代码。再次感谢大家!