bat/cmd

バッチファイル 正規表現が必要な特殊記号 備忘録

こんばんは、今回はバッチファイルを作成したときに中々完成するまでにハマってしまった時がありました。はまってしまったのはバッチファイルの特殊記号です。バッチファイルの正規表現のための特殊記号についてのメモです。

バッチファイル 正規表現 特殊記号

さっそくですが、バッチファイルで通常通り使用するとエラーになる文字があります。それは下記の記号です。この記号を使用する際にそのままバッチファイルに記述するとバッチファイルが正常に動かなくなるので注意しましょう!!

  • < ・・・ 左かっこ
  • >  ・・・ 右かっこ
  • &  ・・・ アンド
  • |  ・・・ パイプ

正規表現とはなんだ?と思った方は、特殊な文字列を一つの形式で正規に表現するための方法と思ってもらえた方が簡単かと思います。

特殊記号を記述したバッチファイル失敗例

@echo off
rem #######################
rem 特殊記号なしでそのまま記述した場合
rem #######################
echo ミッキー&ミニーです
echo.
echo これは< テスト > です
echo.
echo tokyo | kanagawa | kyoto | osaka
echo.
echo.
pause

このように半角記号の &  <  >  | をそのまま使用するとバッチファイルは正常に動作しません。下記のようなエラーになります。 | に至っては表示すらされず終了します。

次に紹介する方法で正常に表示できます。

バッチファイル 特殊記号を使う時の対処方法

特殊文字を記述したいときの対処方法は、ずばり下記の記号を特殊記号の前に付加しましょう。

・・・ ハット

特殊記号を記述したバッチファイル成功例

@echo off
rem #######################
rem 特殊記号^を使用して記述した場合
rem #######################
echo これは^< テスト ^> です
echo.
echo ミッキー^&ミニーです
echo.
echo tokyo ^| kanagawa ^| kyoto ^| osaka ^|
echo.
echo.
pause

このように半角記号の & < >  | の前に^を使用するとバッチファイルは正常に動作します。下記が実行画面になります。

その他 正規表現の機能 ^

改行の直前に^を入れると改行がないものとみなされます。場合によっては使える機能なので覚えておいて損はないはずです。

バッチファイル特殊記号 まとめ

バッチファイル特殊記号 まとめ
  • 特殊記号 & < >  | を使う際は^記号を前方に付加する。
  • 全角文字 & < > | なら影響は受けない
  • ”(ダブルクウォーテーション)で囲めば””文字列として扱われるが”(ダブルクウォテーション)まで表示される 
  • 改行の直前に^を入れると改行がないものとみなされ

正規表現に強くなればバッチファイルも思うように作成できます!

それではー!

ABOUT ME
なお
フルスタックエンジニアを目指すサラリーマン。インフラ、WEBを中心に色んなIT関連情報に手を出したいと思います。
ブログランキング

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA