如何删除第一个和最后一个字符...但只是数字

时间:2016-01-18 17:10:50

标签: text

我有10000个文本网站,基本上是字幕文本...我想删除最后 5个数字前2个数字的每一行触摸/更改文字......

以下是一个例子:

  

18: 00:03:13:05 00:03:16:17 03:12 Moi,j'auraismisçaàlamêmeuteuteurqueça。

     

19: 00:03:18:02 00:03:21:05 03:03 Dans un premier temps,je termine。

     

20: 00:03:23:15 00:03:26:07 02:17 啊,这是艰难的旅程!

应删除粗体数字。

2 个答案:

答案 0 :(得分:0)

有很多方法可以解决这个问题。

  1. 将字符串拆分为子字符串,然后连接所需的字符串。
  2. 正则表达式从文本中拉回反射。
  3. 由于您的数据看起来非常规范化,并且基本上是以空格分隔的,您可以根据空格对字符串进行标记,然后将第2个,第3个和第34个休息符号放在"回到一起,扔掉第一和第四个标记。

    您不会说出您想要使用的工具或语言,但在Java中您可以使用public String[] split(String regex, int limit)

    使用Vim,类似:0,$s/\d\+: //的内容应删除第一部分。像:0,$s/ \d\d:\d\d / /这样的模式应该删除第二部分。

答案 1 :(得分:0)

假设文件中的所有行都相同且你有一个固定宽度的文件,在类似UNIX的系统(Unix,Linux,Mac,FreeBSD)上,你可以试试

cut -b 1-4,28-33 --complement INPUTFILENAME > OUTPUTFILENAME

如果没有,您应该分两步完成,如下所示:

cut -d : -f 1 --complement INPUTFILENAME > OUTPUTFILENAME
cut -b 24-29 --complement OUTPUTFILENAME > OUTPUTFILENAME

第二个解决方案的第一步是删除第一个数字标识符字段,而不管其长度如何。第二步改变应该是相似宽度的线(对于感兴趣的列)。