「最初に言っておく!これは、かーなーり、酷い!」
可読性ゼロの技術的観点のみのネタですので
自分しか使わない、2度と変更することは無い、
どーしてもこの方法じゃないと出来ない場合にのみ使って下さい。
For文を使ってdelimsに「,」を指定すると
CSVファイルの指定の列の内容が取り出せます。
変数を%%Aで指定すれば、
エクセルのように%%A=A列の感覚で使えます。
問題になるのは、%%A変数の場合に
27列目の変数の指定が「[」になるので
別の文字を割り当てる方法が無いかなと
For文の仕様を見ていたら
変数名は単一の文字を指定と書いてあったので
試したら、半角数字・漢字・半角カナが使えました。
なので%%アで指定すれば、26列超えが出来ます。
だがしかし
tokensの最大値は31という制限があるので
半角カナ変数を使っても、31列が限界になってしまいます。
そこで
tokensの継ぎ足し機能を使って
なんとか81列まで指定出来ました。
これ以上取り出したい場合は
GAWKを使ったり、UNIXのCUTに該当する
「CSV-Preprocessor Home Page」にある
「CSVファイル項目抽出プログラム」で
必要な列だけ取り出してきてから
編集する方が現実的だと思います。
rem /; 継ぎ目無し
for /F "tokens=1-10 delims=," %%0 in ("1,2,3,4,5,6,7,8,9,10") do echo;%%0-%%9
rem /; 0x8740 - 0x8753 ①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳
for /F "tokens=1-20 delims=," %%① in ("1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20") do echo;%%①-%%⑳
for /F "tokens=1-26 delims=," %%A in ("1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26") do echo;%%A-%%Z
for /F "tokens=1-31 delims=," %%ア in ("1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31") do echo;%%ア-%%マ
rem /;
rem /; 継ぎ目有り 1-46
rem /; ※ 半角の小書きでない「ア」0xB1から使う(小書きは「ァ」0xA7)
rem /; 継
rem /; ア,イ,ウ,エ,オ,カ,キ,ク,ケ, コ, サ, シ, ス, セ, ソ, タ, チ, ツ, テ, ト, ナ, ニ, ヌ, ネ, ノ, ハ, ヒ, フ, ヘ, ホ, マ, ミ, ム, メ, モ, ヤ, ユ, ヨ, ラ, リ, ル, レ, ロ, ワ, ン, ゙, ゚
rem /; 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31 32,33,34,35,36,37,38,39,40,41,42,43,44,45,46
rem /;
for /F "tokens=1-31* delims=," %%ア in ("1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46") do for /F "tokens=1-15 delims=," %%ム in ("%%ミ") do echo;%%ア-%%マ,%%ム-%%゚
rem /;
rem /; 継ぎ目有り 1-62
rem /; ※ 7が小書きの「ァ」0xA7、17が小書きでない「ア」0xB1
rem /; 継
rem /; 。,「,」,、,・,ヲ,ァ,ィ,ゥ, ェ, ォ, ャ, ュ, ョ, ッ, -, ア, イ, ウ, エ, オ, カ, キ, ク, ケ, コ, サ, シ, ス, セ, ソ, タ, チ, ツ, テ, ト, ナ, ニ, ヌ, ネ, ノ, ハ, ヒ, フ, ヘ, ホ, マ, ミ, ム, メ, モ, ヤ, ユ, ヨ, ラ, リ, ル, レ, ロ, ワ, ン, ゙, ゚
rem /; 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31 32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62
rem /;
for /F "tokens=1-31* delims=," %%。 in ("1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62") do for /F "tokens=1-31 delims=," %%チ in ("%%タ") do echo;%%。-%%ソ,%%チ-%%゚
rem /;
rem /; 継ぎ目有り 1-81
rem /; ※ 全角は「ァ」は、[ァ~ミ]で文字列が途切れる
rem /; 継 継
rem /; ぁ,あ,ぃ,い,ぅ,う,ぇ,え,ぉ,お,か,が,き,ぎ,く,ぐ,け,げ,こ,ご,さ,ざ,し,じ,す,ず,せ,ぜ,そ,ぞ,た,だ,ち,ぢ,っ,つ,づ,て,で,と,ど,な,に,ぬ,ね,の,は,ば,ぱ,ひ,び,ぴ,ふ,ぶ,ぷ,へ,べ,ぺ,ほ,ぼ,ぽ,ま,み,む,め,も,ゃ,や,ゅ,ゆ,ょ,よ,ら,り,る,れ,ろ,ゎ,わ,ゐ,ゑ,を,ん
rem /; 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31 32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62 63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81
rem /;
for /F "tokens=1-31* delims=," %%ぁ in ("1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81") do for /F "tokens=1-31* delims=," %%ち in ("%%だ") do for /F "tokens=1-19 delims=," %%め in ("%%む") do echo;%%ぁ-%%た,%%ち-%%み,%%め-%%ん