请给我regex,以便从银行对账单pdf中的一堆转换文本文档中查找帐号

2024-05-15 00:45:22 发布

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

我有一堆不同的银行对账单pdf,我已经转换成文本,从中提取消费者信息。我必须写正则表达式来提取帐号。帐号后面是特定关键字,例如:

account number,
account no,
a/c no

我将粘贴一些包含此信息的示例文本

样本1:

"bank of india  account statement name abcd account no. 123456 account type savings account"

样本2:

"statement for a/c no 11111111 between 16-09-2019 and 16-03-2020"

样本3:

"shyam alaspure<br />
period<br />
01-12-2019 to 29-02-2020<br />
cust.reln.no<br />
XXXXXXXX<br />
account no<br />
9XXX99999"<br />

我使用了下面的正则表达式

'account no.\s*([^.]+|\S+)'

但输出给出了帐号之后的所有文本

请帮我找到解决办法


Tags: no文本br信息numberpdf粘贴消费者
2条回答

请使用下面的正则表达式

(?i)(?:a\/c|account)\s*no\.?\s+(\w+)

看到它工作了吗here

注意

  • (?:|$)始终匹配空字符串,此模式是冗余的
  • {1}始终是冗余的,请不要在手动编写的regexp中使用它
  • ^字符类之外使用的{}匹配除换行字符以外的任何字符,请始终对其进行转义\.,以匹配文字字符[.]也与文字点匹配

你可以用

r'\b(?:a/c|account) no\.?\s+(\w+)'

regex demo

详细信息

  • \b-单词边界
  • (?:a/c|account)-要么{}要么{}
  • no.?-空格,no,可选点
  • \s+-1+空格
  • (\w+)-第1组:一个或多个字母、数字或下划线

相关问题 更多 >

    热门问题