Windows CMD 分割字串 - Windows

Table of Contents

※ [本文轉錄自 Programming 看板 #1MUudHkE ]

作者: wanzoo (Zoo) 看板: Programming
標題: [問題] Windows CMD 分割字串
時間: Thu Dec 24 13:59:42 2015

文字檔裡,每行的內容如下:

1A345_ABC_67890_XYZ_112233
32132_ABC_0983091_GJK_334455
xxxxxxxx_ABC_yyy_RSF_556677

我想要取出 67890_XYZ 以及 0983091_GJK,以此類推。

請問有沒有最快的方法?

我試著先用 delims 分割字串,但發現 delims 後面只能指定「字元組合」,
而不是「完整字串」,

比如用下列指令來分割第一行:

for /F "delims=_ABC_" %0 in (test.txt) do @echo %0

照理說要用"_ABC_"來分割成 1A345 及 67890_XYZ_112233。
但是,程式並不會以"_ABC_"來分割,而是以"_ABC_"裡能在第一行最先找到的字元來分割,
也就是會用"_ABC_"裡的"A"來把字串割成 1 跟 345_ABC_67890_XYZ_112233。

有解法嗎?


--

All Comments

Catherine avatarCatherine2015-12-29
不要一直想用高階指令,基本的陣列足以應付此問題
George avatarGeorge2016-01-02
還有轉來 windows 幹什麼
Kama avatarKama2016-01-04
咦,batch裡陣列只是概念上的不算是真的陣列吧,害我思
考了十秒,而且batch本來就windows的東東,轉到這也沒啥
不對啊@@