【问题标题】:FOR/F two consecutives delimsFOR/F 两个连续的分隔符
【发布时间】:2016-06-07 16:40:49
【问题描述】:

我在 Windows 7 的批处理文件中有以下 FOR /F 循环:

   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 ,可以设置为空而不设置为以下参数。 发生这种情况是因为字符串中有两个分隔符(连字符)。 是否有可能得到以下结果? %%a=罗西 %%b=保罗 %%c=15012016 %%d= %%e=罗马

非常感谢。

【问题讨论】:

    标签: batch-file


    【解决方案1】:

    试试这样:

    @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
    ) 
    

    这会将-- 替换为- -,这将在双分隔符的位置设置空格,相应的标记将是空格。

    【讨论】:

      猜你喜欢
      • 2011-12-15
      • 1970-01-01
      • 1970-01-01
      • 2013-08-19
      • 1970-01-01
      • 2011-06-14
      • 1970-01-01
      • 2011-09-22
      • 2020-02-25
      相关资源
      最近更新 更多