[Windowsバッチ] 文字列を部分的に切り出す
Windowsバッチ内で、文字列を部分的に切り出す方法です。
サンプル
例)文字列「ABCDEFGHIJKLMN」を切り出すいろいろ
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 |
@echo off rem 文字列定義 set val=ABCDEFGHIJKLMN rem 例1)そのまま表示 echo %val% rem 例2)文字列の4文字目~5文字分を切り出す echo %val:~3,5% rem 例3)文字列の4文字目以降を切り出す echo %val:~3% rem 例4)文字列の文字列の4文字目~末尾5文字を除いたもの echo %val:~3,-5% rem 例5)末尾5文字 echo %val:~-5% rem 例6)末尾から5文字目から2文字分 echo %val:~-5,2% rem 例7)末尾から5文字目から末尾から2文字を除いた分 echo %val:~-5,-2% pause |
(実行結果)
- コマンドプロンプト
- ABCDEFGHIJKLMN DEFGH DEFGHIJKLMN DEFGHI JKLMN JK JKL 続行するには何かキーを押してください . . .
構文
文字列切り出しの構文は以下の通りです。
%val% | 全文字 |
---|---|
%val:~m,n% | m文字目~n文字 |
%val:~m% | m文字目~末尾まで |
%val:~m,-n% | m文字目~末尾n文字を除いた分 |
%val:~-m% | 末尾m文字 |
%val:~-m,n% | 末尾m文字~n文字分 |
%val:~-m,-n% | 末尾m文字~末尾n文字を除いた分 |
備考
- 指定する数字は文字数なので、半角全角問わず1文字は1文字とカウントされます。
- 先頭から数える時の文字位置は1文字目を0、2文字目を1...と数えるのでご注意ください。
ディスカッション
コメント一覧
まだ、コメントがありません