2013-03-28 143 views
1

我想每個文件夾(在for環路)的名稱分爲2個部分:左邊部分(分隔符之前「 - 」)和右部(分隔符後) 。將一個字符串分解成兩個部分批次

例: 「卓悅 - 謝爾AMI」=>左=卓悅,右=雪兒阿米

但它不工作:

for /d %%a in (*) do (
    set "fname=%%a" 
    set "right=%fname:* - =%" 
    call set "left=%%fname: - %right%=%%" 
    echo [%left%] * [%right%] 
) 

在此先感謝

+1

你想讀取文件夾名稱並分割名稱並打印它們嗎? – Illusionist

回答

1

內部代碼塊需要其他語法:

@echo off &setlocal 
for /d %%a in (*) do (
    set "fname=%%~a" 
    call set "right=%%fname:* - =%%" 
    call call set "left=%%%%fname: - %%right%%=%%%%" 
    call echo [%%left%%] * [%%right%%] 
) 

如果在t中沒有「-」他的文件夾名稱,然後%左%%==右%。

+0

謝謝! 它現在,但如果'%% A = blablahehe',然後'左= blablahehe''權= hehe',而不是'左= blabla''右= hehe' – Basj

+1

是的,你說得對,代碼需要更多'%%'。將做一個(希望最後)編輯:) – Endoro

相關問題