如何从文本中查找/提取页码?

时间:2017-06-02 06:42:30

标签: python regex ocr

我一直在对一些图像进行OCR,这些图像是不同文档的一部分,底部有页码。我找到了找到每个文档的方法,但图像不按顺序排列,我想对它们进行排序按他们的页码。一个小问题是页码的格式存在差异,即

  • Page 1 of 35
  • Page 1-35
  • Page 35

此外,Page也可以是小写page。我正在寻找的是使用正则表达式从页面中提取这一点的通用方法。如果它可以在一个正则表达式中处理将是很好的,因为编译版本将比为每个案例具有不同的版本更快。 感谢

2 个答案:

答案 0 :(得分:1)

尝试使用以下正则表达式,

page\s[\d]?[\s\d\-of]+

使用“I”标志不区分大小写。

RegexDemo

答案 1 :(得分:0)

请查看以下命令是否适合您。感谢

>>> re.findall(r'\w*\s\w*\d{1,5}','Page 1-35')
['Page 1']
>>> re.findall(r'\w*\s\w*\d{1,5}','Page 35')
['Page 35']
>>> re.findall(r'\w*\s\w*\d{1,5}','Page 1 of 35')[0]
'Page 1'
>>> re.findall(r'\w*\s\w*\d{1,5}','page 1 of 35')[0]
'page 1'
`