如何删除python中多个字符串之间的无效字符?

2024-04-20 08:39:48 发布

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

我和OCR一起在西班牙的一个项目中工作。相机在一行文本中捕捉不同的帧。文本行包含以下内容:

Este texto,es una prueba del dispositivo selector para no videntes.埃斯特文本公司,该公司不提供任何证据。

经过一些操作后,我得到了这样的字符串:

s1 = "Este texto, es una p!"
s2 = "fste texto, es una |prueba u.-"
s3 = "jo, es una prueba del dispo‘"
s4 = "prueba del dispositivo \ec"
s5 = "del dispositivo lector par:"
s6 = "positivo lector para no xndev"
s7 = "lector para no videntes"
s8 = "¡r para no videntes."

我想加入字符串,这样我就可以得到最后一个字符串中扫描行的文本:

^{pr2}$

首先,我尝试在两个字符串之间使用SequenceMatcher,但没有效果:

# -*- coding: utf-8 -*-
from difflib import SequenceMatcher as sq
s1 = "Este texto, es una p!"
s2 = "fste texto, es una prueba u.-"
match = sq(None, s1, s2).find_longest_match(0, len(s1), 0, len(s2))
print unicode(s1 + s2[match.b + match.size:])

结果包含无效字符,如|!

>>>Este texto, es una p!|prueba u.-

s2和{}之间:

>>>fste texto, es una |prueba u.-prueba del dispo‘

等等,我在Windows7上使用Python2.7。在


Tags: no字符串文本esmatchestepruebadel