プログラミング言語や環境設定を中心としたパソコン関連の技術メモです。
主にシステム開発中に調べたことをメモしています。TIPS的な位置付けで、気が向いたときにちまちま更新していきます。
Windows、バッチファイル(.bat)の中で文字列を置換する
結論から書けば、変数に対して

%変数名:置換対象の文字列=置換後の文字列%

と書けば置換されます。

サンプルは例えばこんな感じでφ(--)

@echo off

set STR=abcdefghijklmnopqrstuvwxyz

echo %STR%
echo %STR:a=A%

pause

実行結果はこんな感じになりますφ(--)

abcdefghijklmnopqrstuvwxyz
Abcdefghijklmnopqrstuvwxyz
続行するには何かキーを押してください . . .

小文字だった「a」が大文字の「A」に変わっていますね。

ちなみに置換できるのは「文字」ではなく「文字列」です。
単語とかの置換も行けちゃいます。

例えばこんなのを動かすとφ(--)

@echo off

set STR=abcdefghijklmnopqrstuvwxyz

echo %STR%
echo %STR:bcd=BCD%

pause

こんな結果になりますφ(--)

abcdefghijklmnopqrstuvwxyz
aBCDefghijklmnopqrstuvwxyz
続行するには何かキーを押してください . . .

小文字だった「bcd」が大文字の「BCD」に変わっていますね。

該当する文字列が複数個あった場合はすべて置換されます。

例えばこんなんだったらφ(--)

@echo off

set STR=abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz

echo %STR%
echo %STR:bcd=BCD%

pause

こんな結果になりますφ(--)

abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
aBCDefghijklmnopqrstuvwxyzaBCDefghijklmnopqrstuvwxyz
続行するには何かキーを押してください . . .

2回登場している「bcd」が両方とも「BCD」に変わっていますね。

取りあえず、そんな感じ(--)ノ
スポンサーリンク
 
このエントリーをはてなブックマークに追加 

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

  関連記事