PowerShellでの正規表現の使い方について紹介!正規表現を正しく使いこなそう!

PowerShellでの正規表現の使い方について紹介!正規表現を正しく使いこなそう!のアイキャッチイメージ

PowerShellでの正規表現の使い方について


今回は、PowerShellでの正規表現の使い方について説明します。正規表現の判定・マッチした部分の抽出/置換方法について紹介します。

PowerShellでの正規表現の使い方に興味のある方はぜひご覧ください。

判定

PowerShellでの正規表現を使った文字列の判定方法を紹介します。
文字列が正規表現にマッチするか否かということです。

実際のコマンドを見てみましょう。

PowerShellでは、matchを使うことで、文字列が正規表現にマッチするか否か判定できます。

配列の場合は、一致する要素が取得されます。

文字列と配列で結果が異なることが分かります。

抽出

PowerShellでの正規表現にマッチした文字列の抽出方法を紹介します。
$Matchesを使用します。

実際のコマンドを見てみましょう。

$Matchesを使うことで、正規表現にマッチした部分の文字列が抽出されることが分かります。

では、正規表現にマッチする文字列が複数存在する場合はどうなるでしょうか。

“456”も正規表現にマッチしていますが抽出されていません。$Matchesは最初にマッチした文字列を抽出します。

[RegEx]::Matchesを使用することで、正規表現にマッチする文字列が複数存在する場合もすべて抽出できます。

このように、PowerShellでは正規表現にマッチした文字列を抽出できます。

複数条件

PowerShellで複数の正規表現を指定する方法を紹介します。
|で正規表現を連結して記載します。

実際のコマンドを見てみましょう。

このようにPowerShellでは、複数の正規表現を指定することもできます。

置換

PowerShellにて、正規表現にマッチした文字列を置換する方法を紹介します。
replaceに正規表現を使用します。

実際のコマンドを見てみましょう。

半角スペースがハイフンに置換されていることが分かります。

半角スペースが複数存在する場合も置換できます。

最初にマッチした部分のみ置換したい場合は以下のように記述します。

このようにPowerShellでは、正規表現にマッチした文字列を置換できます。

正規表現の使用例

PowerShellでの正規表現の使用例を紹介します

まずは、正規表現にマッチするファイルを削除するコマンドです。

正規表現にマッチするファイルが削除されていることが分かります。

次に、ファイルの中からIPアドレスを抽出するコマンドです。

ファイル内のIPアドレス部分が抽出されていることが分かります。

まとめ

いかがでしたでしょうか。PowerShellでの正規表現の使い方について説明しました。
正規表現を使用すれば、マッチするか否かの判定・マッチした部分の抽出/置換などができます。
ぜひご自身でコマンドを書いて、理解を深めてください。

インフラエンジニア専門の転職サイト「FEnetインフラ」

FEnetインフラはサービス開始から10年以上『エンジニアの生涯価値の向上』をミッションに掲げ、多くのエンジニアの就業を支援してきました。

転職をお考えの方は気軽にご登録・ご相談ください。