如何使用正则表达式,删除字幕文件中每行的时间。

如何使用正则表达式,删除字幕文件中每一行最左边的时间。就是类似这样的 00:02.30,0:00:05.44 The history of our life 。
因为是时间轴这样的,每行前边这些00:02.30,0:00:05.44 都不可能是一样,所以简单的替换是没办法删掉的,想到了正则表达式,可是试了几次也试不出来,要删除整个文档里每一行前面的00:02.30,0:00:05.44 这些时间点,只留下右边的文字。我用的是EditPlus,UE这些。
非常的感谢“天空的蓝”、“ fennng”、“ jatvsjat”。
天空的蓝从理论角度解决了我的问题,谢谢!
jatvsjat则从实际操作方面给了我帮助,非常感谢!

有个办法的:

最简便的方法,你可以用Dreamweaver

来查找替换:选择正则表达式的模式
我写的 这个:\d{2}:\d{2}\.\d{2},\d{1,2}:\d{2}:\d{2}\.\d{2}

已经通过,你可以直接替换了哈!!
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-08-23
要删除的内容正则表达式是
[0-9]{2}:[0-9]{2}.[0-9]{2},[0-9]{1}:[0-9]{2}:[0-9]{2}.[0-9]{2}

EditPlus,UE只是一个IDE程序,具体的实现需要你自己用代码写出来。
如果你懂编程。或者你只会改别人的程序。。没办法放弃吧还是。
关键代码如下,是用JavaScript举例。

直接按行读歌词文件,然后判断这一行的长度
//以上读取歌词文件代码省略
if(str.length>19&&str.substr(0,19).match(/^[0-9]{2}:[0-9]{2}.[0-9]{2},[0-9]{1}:[0-9]{2}:[0-9]{2}.[0-9]{2}$/)){
//写到一个新的文件,str.substr(19,str.length);
}
第2个回答  2010-08-23
我记得UE的正则不是PERL, 所以不懂怎么写.

editplus的正则不知道是不是perl 正则. 应该是.

正则是这样写的...

天空逝去的蓝 的正则写得是正确的 perl 正则.有一个偷懒的方法

这样一个正则就可以做到

^.*?空格

把空格两个字换成真正的空格就行了.

因为你的时间段后面一定会跟个空格,所以以空格为切分点.

如何使用正则表达式,删除字幕文件中每行的时间。
最简便的方法,你可以用Dreamweaver 来查找替换:选择正则表达式的模式 我写的 这个:\\d{2}:\\d{2}\\.\\d{2},\\d{1,2}:\\d{2}:\\d{2}\\.\\d{2} 已经通过,你可以直接替换了哈!!

Linux如何使用正则表达式命令?文本文件操作命令
cut 可以根据一个指定的标记(默认是 tab)来为文本划分列,然后将此列显示。使用权限:所有使用者 基本格式: cut -cnum1 -num2 filename 说明:显示每行从开头算起 num1 到 num2 的文字。[root@uplooking root] $ cut –f1 –d: \/etc\/shadow 表示以 : 为分隔符,显示 \/etc\/shadow ...

如何用bat 批处理 删除文本中 每行的数字和空格
bat不知道,不过你这个要求用查找替换可以一次性解决。需要文本编辑器支持正则表达式,比如notepad++ notepad2等。Ctrl+h打开替换窗口,勾选正则表达式,查找目标输入[0-9 ],注意9后面有个空格,替换为不要有任何输入,然后点击全部替换即可。

在UltraEdit中使用正则表达式
Tip 1: 如何去掉所编辑文本中包含特定字符串的行?这则技巧是在UltraEdit的帮助文件里提到.CTRL+R 调出来替换(Replace)窗口,选中"使用正则表达式";然后用查找 %*你的字符串*^p 替换成空内容即可.如,我当前有个文本文件,需要去掉所有包含 http:\/\/www.baidu.net\/ 这个字符串的行,查找%*http:\/\/www.baidu.net\/...

用vb如何去掉每行及其中内容?
你的目的只是提取A标签的内容的话,不用管LI标签了,直接用正则很方便实现。Private Sub Command1_Click()Dim s As String s = Text1.Text s = Replace(Text1.Text, vbCrLf, "") '去除所有的回车 Dim oRegEx, oMatches Dim Item Set oRegEx = CreateObject("VBScript.RegExp")With oRegEx ...

如何批量删除文本文档每行后面不要的部分。批量文本。
使用正则表达式 查找,替换 可以做到。

vim中,下面的删除偶数行的正则表达式为什么不一样呀?
再删除。顺序的操作。 如果这一行就1个字符的话,就跳到下一行了。重复执行,那个空格可能被省略了吧。建议normal 命令不用%来做。给你2个命令:删除偶数行:s\/\\(^.*$\\)\\n^.*$\/\\1\/g 删除奇数行:s\/^.*$\\n\\(^.*$\\)\/\\1\/g 很好理解,就是把2行正则match,替换成其中1行。

这个文本怎么批量替换每行的字?
用软件replace pioneer的正则表达式功能按照以下步骤替换即可:1. ctrl-o打开文件 2. ctrl-h打开replace窗口 replace unit选chars replace scope选Line 在search for pattern输入("(.*?)".*?)pic1即可 在replace with pattern输入$1$2即可 3. 点击replace完成 4. ctrl-s存盘。

vb怎么检查文本文件中的时间格式
读取文本文件,采用没次读取一行。然后,可以用自定义函数方法,依据分隔符号“”、“\/”、":"分解每行数据,分离出数字,进行判断。也可以使用正则表达式进行判断。

文本文档怎么去除每行的最后几个不同字符
用nodepad或者nodepad++或者ue打开,然后ctrl+F打开搜索框,选择替换,高级选项中选择使用正则表达式,然后把你想替换的字符替换成“”(空)就可以了。使用正则表达式是为了准确的找到你想要替换的字符,比如你的例子可以这样替换:替换:^AO2%09.S \\n 替换为:""\\n是为了准确你的替换字符,将所有结尾...

相似回答