2016-06-07 62 views
1

我已在Windows 7下在成批处理文件/ F循环:FOR/F 2个consecutives delims

set name=ROSSI-PAOLO-15012016--ROME-15012017-VIA ROMA--ITALIA-- 
    for /F "tokens=1,2,3,4,5 delims=-" %%a in ("%Name%") do (
    echo %%a, %%b, %%c, %%d , %%e) 

我需要的参数NB。 4,即等于变量%% d,可以设置为null并且不设置为以下参数。 发生这种情况是因为字符串中有两个分隔符(hypens)。 可能有以下结果吗? %%一个= ROSSI %% B = PAOLO %% C = 15012016 %% d = %% E = ROME

感谢。

回答

0

尝试这样的:

@echo off 

set name=ROSSI-PAOLO-15012016--ROME-15012017-VIA ROMA--ITALIA-- 
    for /F "tokens=1,2,3,4,5 delims=-" %%a in ("%Name:--=- -%") do (
    echo %%a, %%b, %%c, %%d , %%e 
) 

这将取代--- -将设置在双分隔符的位置和相应的令牌将空间的空间。

+0

它像一个魅力工作! – bantonacci

+0

@bantonacci - 您可以通过点击左侧的'0'下方的粗体接受答案:-) – npocmaka