Войти

Показать полную графическую версию : Поиск строчки в тексте (if exist)


mixpack
13-10-2015, 23:36
Добрый вечер.
Я совсем новичок в этом и поэтому прошу помощи у вас.
Нужно написать такой код, чтобы он искал строчку stream index="*" (но число не постоянное, тут либо подбором от 20, либо подстановкой) в текстовом файле text.xml, если строка, которую нашел скрипт stream index="2" (например), то добавить такой текст в конец файла 1.bat -add 1.m4a -add 2.m4a (было бы "3", то -add 1.m4a -add 2.m4a -add 3.m4a)

С Уважением,
Кирилл

Iska
14-10-2015, 00:40
в текстовом файле text.xml »
Упакуйте образец Вашего файла «text.xml» в архив и приложите к сообщению.

mixpack
14-10-2015, 07:33
http://forum.oszone.net/attachment.php?attachmentid=129962&stc=1&d=1444797179

Foreigner
14-10-2015, 09:38
mixpack, Не совсем понятно, в test.xml два вхождения "<stream index", нужно обрабатывать каждый или только последний:

@echo off
setlocal

for /f "tokens=2 delims==" %%i in ('findstr ".*stream.index=.*" test.xml') do call:set %%i

for /l %%i in (1,1,%cnt%) do 0>nul 1>>1.bat set /p="-add %%i.m4a "
1>>1.bat echo.

goto:eof

:set
set "cnt=%~1"

mixpack
14-10-2015, 09:58
Нужно обрабатывать последний найденный stream index
В данном примере последний с цифрой 2, значит его брать и добавлять -add 1.m4a -add 2.m4a
Если последний с цифрой 3, то добавлять -add 1.m4a -add 2.m4a -add 3.m4a

mixpack
14-10-2015, 14:11
Foreigner,
Поможете?

Foreigner
14-10-2015, 14:17
mixpack, Чем? Если есть какие-то замечания по батнику, то конкретизируйте.

mixpack
14-10-2015, 14:26
Foreigner, поспешил я! Все отлично работает!
Можно с Вами в ЛС еще поговорить или в скайп\ по почте?




© OSzone.net 2001-2012