我想清理由于OCR而导致许多错误的字幕文件。在错误上,l
显示为I
。当然有时I
实际上是I
,主要是在:
I'm Ieaving...
或- I'm Ieaving...
。IsabeIIe
。由于名称难以检测,我认为最好只用一个或多个前面的小写字母替换I
,并手动检查其余部分。因此,在转换后,我得到I'm Ieaving
和Isabelle
。这是我能想到的最“准系统”的自动化解决方案,因为没有那么多单词字母直接在大写字母之前。
如何在Regex中执行此操作?提前谢谢。
答案 0 :(得分:2)
如果你的正则表达式引擎支持lookbehind,你可以找到我之前的小写字母,如下所示:
(?<=[a-z])I
否则,您可以匹配两个字符,第二个字符将是I。
[a-z]I
答案 1 :(得分:1)
其中一个,如果您的引擎支持修改器组。
(?-i:(?<=[a-z])I)
or
(?-i:[a-z]I)
对于Unicode,您需要使用属性。
答案 2 :(得分:0)
/([a-z])I/
会捕获大写字母,前面是任何小写字母a-z。