我对Batch比较陌生,在txt文件中查找字符串值时遇到了问题。我正在使用一个名为CCExtactor的整洁程序来从文件中提取隐藏字幕,并且需要获取隐藏字幕的时间。
CCExtractor的输出如下所示:
###SUBTITLE#08:37#08:40#She ran away我的批处理脚本如下所示:
for /F "delims=" %%a in (subtitle.txt) do ( echo %1|findstr /R /C:"^[^0-9][0-9]*$" )我好像不能让它工作!我正在试着略过时间值!
我该怎么做呢?
发布于 2012-08-18 01:30:30
下面是一个例子。
@echo off
setlocal
set filename=subtitle.txt
for /f "delims=# tokens=2,3" %%I in ('findstr /r /c:"^###SUBTITLE#[0-9][0-9]:[0-9][0-9]#[0-9][0-9]:[0-9][0-9]#" %filename%') do (
echo start=%%I, end=%%J
)发布于 2012-08-18 01:06:40
在for语句中,您应该将delims值设置为#。这样,您就可以回显%%d和%%e,以获得开始时间和结束时间。
https://stackoverflow.com/questions/12009889
复制相似问题