プログラミング言語や環境設定を中心としたパソコン関連の技術メモです。
主にシステム開発中に調べたことをメモしています。TIPS的な位置付けで、気が向いたときにちまちま更新していきます。
Windowsバッチファイル(.bat)、文字列を切り出す
Windowsバッチファイルにおける、文字列切り出しの覚え方メモでっす(--)ノ

書式は

%【変数名】:~【開始位置】,【文字数】%

が基本(--)b

例えば

%str1:~3,2%

のような書き方ですね。
上の例では、4文字目(開始位置は0始まりなので)から2文字分切り出します。

あとは

・「バイト数」ではなく「文字数」
・【開始位置】の指定は「0」はじまり。「0」を指定すると一番最初からになる
・【文字数】の指定を省略すると最後までになる
・【開始位置】にマイナスを指定すると、後ろからの位置指定になる
・【文字数】にマイナスを指定すると、除外する長さの指定(後ろから)になる

だけ覚えればOKでっす\(--)/

これを一通り網羅したサンプルコードがこちらφ(--)

@ECHO OFF

SET str1=abcdefghij
SET str2=あいうえおかきくけこ

REM ■文字列
ECHO ■文字列
ECHO %str1%
ECHO %str2%
ECHO ----------------------------------


REM 基本書式:%【変数名】:~【開始位置】,【文字数】%
REM 4文字目から2文字分
ECHO ■基本書式:%【変数名】:~【開始位置】,【文字数】%
ECHO □4文字目から2文字分
ECHO %str1:~3,2%
ECHO %str2:~3,2%
ECHO ----------------------------------


REM 【文字数】の指定を省略すると最後まで
REM 4文字目から最後まで
ECHO ■【文字数】の指定を省略すると最後まで
ECHO □4文字目から最後まで
ECHO %str1:~3%
ECHO %str2:~3%
ECHO ----------------------------------


REM 【開始位置】にマイナスを指定すると、後ろからの位置指定になる
REM 後ろから3文字目から最後まで
ECHO ■【開始位置】にマイナスを指定すると、後ろからの位置指定になる
ECHO □後ろから3文字目から最後まで
ECHO %str1:~-3%
ECHO %str2:~-3%
ECHO ----------------------------------


REM 【文字数】にマイナスを指定すると、除外する長さの指定(後ろから)になる
REM 4文字目から最後の一文字手前まで
ECHO 【文字数】にマイナスを指定すると、除外する長さの指定(後ろから)になる
ECHO □4文字目から最後の一文字手前まで
ECHO %str1:~3,-1%
ECHO %str2:~3,-1%
ECHO ----------------------------------

PAUSE

サンプルコードの実行結果がこちらφ(--)

■文字列
abcdefghij
あいうえおかきくけこ
----------------------------------
■基本書式:~【開始位置】,【文字数】
□4文字目から2文字分
de
えお
----------------------------------
■【文字数】の指定を省略すると最後まで
□4文字目から最後まで
defghij
えおかきくけこ
----------------------------------
■【開始位置】にマイナスを指定すると、後ろからの位置指定になる
□後ろから3文字目から最後まで
hij
くけこ
----------------------------------
【文字数】にマイナスを指定すると、除外する長さの指定(後ろから)になる
□4文字目から最後の一文字手前まで
defghi
えおかきくけ
----------------------------------
続行するには何かキーを押してください . . .

そんな感じ\(--)/
スポンサーリンク
 
このエントリーをはてなブックマークに追加 

category:コマンド/バッチ  thema:パソコンな日々 - genre:コンピュータ  Posted by ササキマコト 

  関連記事