首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OCR混淆0和"o“--如何在python中指定零或字母"o”?

OCR混淆0和"o“--如何在python中指定零或字母"o”?
EN

Stack Overflow用户
提问于 2020-05-26 22:54:42
回答 1查看 530关注 0票数 0

我使用OCR来读取图像和PDF,然后我尝试从其中提取某些数字。在某些情况下,OCR算法将零读为字母"o“。

OCR给了我一条绳子:

代码语言:javascript
复制
Siabicbnenl| 033-7 | _o3300.81086 42000.000002 20852.301017 1 82510000030694



Prerfasa afesad

如果OCR读对了,它会让ben这样做:

代码语言:javascript
复制
Siabicbnenl| 033-7 | _03300.81086 42000.000002 20852.301017 1 82510000030694



Prerfasa afesad

我想抓住那个03300.81086 42000.000002 20852.301017 1 82510000030694

如果OCR读对了,我的模式(?s)\d{5}\.?\d{5}.*?\d{5}\.?\d{6}.*?\d{5}\.?\d{6}.*?\d.*?\d{14}会很好,但在这里,我接触到了一个新的情况:

OCR将零与"o"混淆

是否有一种方法可以修正我的模式,以便将"o“考虑为零,或者我需要创建一个if 'didnt find anything': str.replace("o",0)并再次运行它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-26 23:12:44

字符类\d对于ASCII输入等效于[0-9]。如果您也想包含小写的"o“,那么现在可以在任何地方使用[0-9o] --您可以使用\d

如果您期望输入包含ASCII 0到9以外的其他数字字符,则可以将\do组合在一个(捕获)组中,并有两个替代方案:(\d|o)。如果你喜欢的话,你也可以让它不被捕获:(?:\d|o)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62032712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档