Board logo

标题: 如何用正则表达式或其它方法查找和替换这样一个0? [打印本页]

作者: DOSforever    时间: 2008-9-7 21:42     标题: 如何用正则表达式或其它方法查找和替换这样一个0?

有一字幕文件,打字的人不知道是存心的还是怎么的,他/她把单词中所有的大写字母O全部替换成数字0。我曾经想用正则表达式把它替换回来,但不是很理想,大家看看有什么好办法。

可以这样描述这个0的位置:
可以是一个单词的开头,前面没有任何字符,或者前面必须是字母;有一个或多个(其实最多两个)连续的0;后跟必须是字母,或没有字符,也就是单词的结尾。
作者: earn555    时间: 2008-9-12 10:23

你的描述很模糊,我无法理解,请你再细细分清楚情况,并请分好段。
作者: DOSforever    时间: 2008-9-12 12:11

比如,原本以字母O开头的单词,他/她写成:
0F
0K
0N
0NCE
0VERLAPPING
0rpheus

中间有字母O的单词写成了:
T0M
TRANSMISSI0N
F0R
FR0M
V0ICES
W0MEN
P0P
EXPL0SI0N (不连续的两个0)
C0NTINU0US (不连续的两个0)
WH00SHING (连续的两个0)

以字母O结尾的单词:
FiD0
INT0

但是有些词中含有的0是正常的,不能被替换掉,比如:
60s
80s
100th

原片在这里,对科学有兴趣的朋友可以下载看看
http://www.verycd.com/topics/72385/

[ 本帖最后由 DOSforever 于 2008-9-12 19:34 编辑 ]
作者: shingo    时间: 2008-9-30 20:17

其实用合适字体的话,o和0差不多,不影响观看,内嵌的话还是这样快
作者: sky5    时间: 2008-10-9 10:31

这个是他OCR字幕的时候出错的,你可以自己重新OCR一次,

PS:如果用正则慢慢去匹配的话很麻烦的。。
作者: yjwgi    时间: 2008-10-9 12:25

把文件转换成TXT格式,然后把0替换成O
作者: DOSforever    时间: 2008-10-24 04:19     标题: 回复 4# shingo 的帖子

呵呵,其实我研究这个问题并不是为了正真的看片子,而是出于为了研究一下字符处理,特别是用正则表达式处理的方法。
作者: DOSforever    时间: 2008-10-24 04:22     标题: 回复 5# sky5 的帖子

问题是你哪来原稿来 OCR 呢?即便有,你还要编辑成字幕文件,有这力气那我还不如手工修改原文件了。
作者: DOSforever    时间: 2008-10-24 04:24     标题: 回复 6# yjwgi 的帖子

.srt 字幕文件本来就是纯文本文件,问题是没那么“只要把0替换成O”那么简单,你下载过文件看一下就知道了。




欢迎光临 世界之窗论坛 (http://bbs.theworld.cn/) Powered by Discuz! 7.2