|
kaikai163
初级用户
积分 107
发帖 60
注册 2007-11-7
状态 离线
|
『楼 主』:
已解决 求助,如何用批处理将文本的格式做如下变化
有两个文档
第一个如下:
[00:22.36]片名:百万英镑
[01:16.16]Once upon a time when Britain was very rich 曾经有段时间英国非常富有
[01:19.48]deep in the box of bank in England 在英格兰银行巨大的保管库里
[01:21.48]there was more gold than anywhere in the world 所储存的黄金 比其他任何地方都多
第二个:
00:22.36 --> 01:16.16 片名:百万英镑
01:16.16 --> 01:19.48 Once upon a time when Britain was very rich 曾经有段时间英国非常富有
第二个文档的箭头后边的数字是第二行的数字
请问如何转换,
小弟新手,请各位大侠,不吝赐教!已解决
[ Last edited by kaikai163 on 2008-11-8 at 23:12 ]
|
|
2008-11-8 17:58 |
|
|
tireless
银牌会员
积分 2025
发帖 1122
注册 2007-9-5
状态 离线
|
|
2008-11-8 18:13 |
|
|
pusofalse
银牌会员
积分 1604
发帖 646
注册 2008-4-13
状态 离线
|
『第
3 楼』:
@echo off & setlocal enabledelayedexpansion
for /f "tokens=1* delims=[]" %%a in (a.txt) do (
set /a n+=1,m=n-1
set ".!n!=%%a" & set "_!n!=%%b"
if !n! gtr 1 call :loop "%%a"
)
pause>nul & exit /b
:loop
echo !.%m%! --^> %~1 !_%m%! 另,楼主没有说明白最后一行该如何显示。。。
|
心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^ |
|
2008-11-8 18:39 |
|
|
slore
铂金会员
积分 5212
发帖 2478
注册 2007-2-8
状态 离线
|
『第
4 楼』:
字幕文件处理……
|
S smile 微笑,L love 爱,O optimism 乐观,R relax 放松,E enthusiasm 热情...Slore |
|
2008-11-8 18:42 |
|
|
kaikai163
初级用户
积分 107
发帖 60
注册 2007-11-7
状态 离线
|
『第
5 楼』:
4楼的是内行啊!就是这个要求!
不过我现在找到了一个软件,可以转换也就是lrc转换成srt不过里边有不少空行
如下显示
4
00:01:19,489 --> 00:01:21,480
deep in the box of bank in England 在英格兰银行巨大的保管库里
5
00:01:21,489 --> 00:01:27,160
there was more gold than anywhere in the world 所储存的黄金 比其他任何地方都多
6
00:01:27,169 --> 00:01:27,720
safe the banks of England. 那时有信誉的人常说
该如何将数字与空行去掉,并且字幕与时间放到一行上去呢??
还是请各位高手不吝赐教!
|
|
2008-11-8 22:23 |
|
|
kaikai163
初级用户
积分 107
发帖 60
注册 2007-11-7
状态 离线
|
『第
6 楼』:
晕,一不留神给二楼加分了,本来想给三楼大哥加的!
|
|
2008-11-8 22:27 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
7 楼』:
Re 5楼
@echo off
setlocal enabledelayedexpansion
type nul>result.txt
set m=2
for /f "tokens=*" %%i in ('findstr /v "^[0-9]*$" a.txt') do (
set /a hangn+=1
set /a n+=1
set line=!line! %%i
if !n! equ !m! (
echo.!line:~1!>>result.txt
set line=
set /a n=0
)
)
set /a t=!hangn!%%!m!
if !t! equ 0 goto end
echo.!line!>>result.txt
:end
|
|
|
2008-11-8 22:32 |
|
|
kaikai163
初级用户
积分 107
发帖 60
注册 2007-11-7
状态 离线
|
『第
8 楼』:
版主直接是神仙,我太崇拜你了!
不过还有一点小小的要求
00:02:21,169 --> 00:02:23,120 A bet 是为了打赌
00:02:23,129 --> 00:02:26,240 打赌你是说打赌
版主能看出第一行 “A bet 是为了打赌” 前面那个空格为什么那么宽呢?
然后请修改一下您的批处理,使第二行前面加一个这样的空格。
麻烦你了!
|
|
2008-11-8 22:59 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
9 楼』:
Re 8楼
你自己把7楼代码中:
set line=!line! %%i
!line!和%%i中间的空格换成制表符tab试试
|
|
|
2008-11-8 23:02 |
|
|
kaikai163
初级用户
积分 107
发帖 60
注册 2007-11-7
状态 离线
|
『第
10 楼』:
Quote: | Originally posted by HAT at 2008-11-8 11:02 PM:
你自己把7楼代码中:
set line=!line! %%i
!line!和%%i中间的空格换成制表符tab试试 |
|
好的我试试!
|
|
2008-11-8 23:03 |
|
|
kaikai163
初级用户
积分 107
发帖 60
注册 2007-11-7
状态 离线
|
|
2008-11-8 23:11 |
|