2013-01-14 59 views
0

我希望得到以下列方式解析批量的字符串:獲取路徑從字符串中批量

比方說,我有這樣的路徑作爲批量的字符串:

C:\ PROGRAM Files \ Microsoft \ Test

我希望從此字符串中移除一個給定的字符串。例如,如果我把它用:

C:\ Program Files文件\微軟

我會得到:

測試

如果我把它叫做與:

C:\ Pro克文件

我會得到:

微軟\測試

這可能嗎?

謝謝!

+0

可能重複【如何去掉前綴在Windows命令行字符串?](http://stackoverflow.com/questions/6335007/how-to-remove-prefixes-in-strings-on-windows - 命令行) – melpomene

+0

該帖子沒有太大的幫助。我希望得到需要作爲變量剪切的字符串,並保持其餘的..幾乎... – Idanis

回答

0

像這樣的東西?

set p=C:\Program Files\Microsoft\Test 
echo %p:C:\Program Files\Microsoft\=% 
echo %p:C:\Program Files\=% 
+0

...我想我知道爲什麼它不工作。我將文件的完整路徑發送給函數,並在函數中提取完整路徑(不帶文件名)--->使用'%〜dp2'。然後,我使用for循環將絕對路徑提取到變量中。所以,現在我有這些變量:'!CurrentDir!'和'!Prefix!'分別是'C:\ Program Files \ Microsoft \ Test'和'C:\ Program Files'。我試圖編輯你的第二行到這個:'%CurrentDir:!Prefix!=%' - 但這不起作用... – Idanis

+0

啊,沒有看到批處理的其餘部分我真的不知道爲什麼它doesn不起作用,但如果你使用'!CurrentDir!',那麼'%CurrentDir%'可能不會以相同的方式工作。要嵌套delayedexpansions,你可以使用'call'或者'for',但這取決於它爲什麼不起作用,這只是一個想法。 –

+0

我會給它一個鏡頭。非常感謝您的幫助!! – Idanis

相關問題