我从包含三行或更多行的感兴趣信息的文件中提取记录。信息是有序的,它遵循一个合理的模式,但它是可以的 中间有一些样板文本。在
由于这是一个从PDF转换而来的文本文件,因此也可能存在页码或其他一些简单的控件元素。在
图案包括:
起始行:姓氏和名用逗号分隔,其他都不分隔
下一行将有两个长数字(>;=7位数字),后跟两个日期
最后一行是4位数字,后面是日期
兴趣模式用粗体标记:
LAST NAME ,FIRST NAME ... nothing or possibly some junk text 999999999 9999999 MM/DD/YY MM/DD/YY junk text ... nothing or possibly some junk text 9999 MM/DD/YY junk I dont care
默认情况下,我的目标文本类似于:
^{pr2}$但也有可能遇到这样的情况:
^{3}$我不需要在这里验证太多,所以我用下面的正则表达式捕捉三行。在
因为我知道这个模式将作为子字符串出现,但是可能会有插入
到目前为止,我已经用以下三个规则来捕捉这些元素。表达式:
(([A-Z]+\s+)+,[A-Z]+)
(\d{7,}\s+\d{7,}\s+(\d{2}/\d{2}/\d{2}\s+){2})
(\d{4}\s+\d{2}/\d{2}/\d{2})
但我想提取所有感兴趣的数据。在
有可能吗?如果有,怎么可能?在
这将从较大的字符串中提取所需子字符串的所有实例:
如果需要的话,可以将得到的元组列表缝合在一起,以便在删除垃圾文本的情况下获得所需子字符串的列表。在
在这里,我把正则表达式添加到一个列表中,并尝试一个接一个地查找匹配项。。。这就是你要找的吗??在
相关问题 更多 >
编程相关推荐