2015-09-09 2 views
0

Моя строка «& &„“XMLWrirter», «класс», «& &» Я хочу пролил эту строку на основе; разделитель. И когда я, как показано ниже, я получаю только первое слово напечатано и считать как 1.расщепление строка не работает для меня в пакетном файле

setlocal ENABLEDELAYEDEXPANSION 
set argC=0 
for /f "delims=;" %%x in (""&&";"XMLWrirter";"class";"&&"") do (Set /A argC+=1 
echo tokenitem %%x) 
echo tokencount !argC! 

Заранее спасибо !!!

+1

Когда я пытаюсь запустить это я получаю синтаксическую ошибку ... – Marged

+1

Пожалуйста, помните, что/ф работает на линиях и что вы предоставите одна строка с несколькими значениями – Marged

+1

Вы будете нуждаться чтобы избежать '&' с '^'; чтобы разбить строку, вам нужно указать '' tokens = 1-4 delims =; "', изменить переменную 'for' на' %% a' и извлечь переменные '%% a',' %% b', '%% c',' %% d' для получения всех токенов; – aschipfl

ответ

0

Почему так сложно? Это работает просто отлично:

SETLOCAL ENABLEDELAYEDEXPANSION 
SET argC=0 
FOR %%x IN ("&&";"XMLWrirter";"class";"&&") DO (
    SET /A argC+=1 
    ECHO tokenitem %%x 
) 
ECHO tokencount !argC! 
+0

Отличный !! Я новичок в пакетном программировании, и это просто сработало для меня. Спасибо!! – Smij01

Смежные вопросы