当サイトの記事にはプロモーションが含まれています。

Windows PowerShellで正規表現を使いこなす!初心者向け完全ガイド

パソコンパソコン・スマホ教室
スポンサーリンク

PowerShellを使っていると、「この文字列を一括で置換したい」「特定のパターンだけを抽出したい」と思うこと、ありませんか?そんなときに役立つのが「正規表現」です。でも、「正規表現って難しそう…」と感じている方も多いのではないでしょうか?

安心してください!今回は、PowerShellで正規表現を使う方法を、初心者の方にもわかりやすく解説します。これを読めば、あなたも正規表現マスターになれるかも?

スポンサーリンク

正規表現って何?

Windowsのイメージ

Windowsのイメージ

正規表現とは、文字列のパターンを表現するための「記号の集まり」です。例えば、「数字だけの文字列」「特定の文字で始まる単語」など、文字列の特徴を指定して検索や置換を行うことができます。

PowerShellで正規表現を使う方法

PowerShellでは、正規表現を使うための便利なコマンドレットや演算子が用意されています。主に以下のものがあります

ここがポイント!

  • -match文字列が正規表現に一致するかを確認します。
  • -replace正規表現に一致する部分を置換します。
  • Select-Stringファイルや文字列内で正規表現を使って検索します。

-match 演算子の使い方

例えば、文字列「abc123」が数字を含むかを確認するには、以下のように記述します

$text = 'abc123'
if ($text -match 'd+') {
"数字が含まれています"
} else {
"数字は含まれていません"
}

この例では、d+が「1回以上の数字」を意味する正規表現です。

-replace 演算子で文字列を置換

文字列「abc123」の数字部分を「数字」に置換するには、以下のように記述します

$text = 'abc123'
$newText = $text -replace 'd+', '数字'
$newText # 出力: abc数字

Select-Stringでファイル内を検索

ファイル「sample.txt」内で「error」という文字列を検索するには、以下のように記述します

Select-String -Path 'sample.txt' -Pattern 'error'

これで、ファイル内の「error」を含む行が表示されます。

よく使う正規表現のパターン

ここがポイント!

  • d任意の1桁の数字(0〜9)
  • w任意の1文字の単語文字(アルファベット、数字、アンダースコア)
  • s任意の空白文字(スペース、タブ、改行など)
  • ^文字列の先頭
  • $文字列の末尾
  • a、b、cのいずれかの1文字
  • a、b、c以外の1文字
  • .任意の文字が0回以上繰り返す

実践!ファイル名の一括変更

例えば、フォルダ内のファイル名が「2023年01月01日.txt」のようになっているとします。このファイル名を「20230101.txt」のように変更したい場合、以下のように記述します

Get-ChildItem -Path 'C:Files' -Filter '*.txt' | ForEach-Object {
$newName = $_.Name -replace '(d{4})年(d{2})月(d{2})日', '$1$2$3'
Rename-Item -Path $_.FullName -NewName $newName
}

このスクリプトでは、‘(d{4})年(d{2})月(d{2})日’という正規表現で「2023年01月01日」の部分を抽出し、‘$1$2$3’で「20230101」の形式に変換しています。

よくある質問や疑問

Q1: 正規表現を使うとき、どの演算子を使えばいいですか?

文字列が正規表現に一致するかを確認したいときは-match、一致する部分を置換したいときは-replaceを使います。ファイル内を検索する場合はSelect-Stringが便利です。

Q2: 正規表現のパターンはどこで学べますか?

正規表現のパターンは、インターネット上で多くのリファレンスが公開されています。例えば、正規表現のチートシートやチュートリアルサイトなどがあります。

Q3: 正規表現を使うとき、注意すべき点はありますか?

正規表現は強力ですが、複雑なパターンを使うと処理が遅くなることがあります。必要な範囲でシンプルなパターンを使うよう心がけましょう。

まとめ

PowerShellで正規表現を使うことで、文字列の検索や置換、ファイル名の一括変更などが効率よく行えます。最初は難しく感じるかもしれませんが、少しずつ覚えていけば、作業の効率が格段にアップしますよ!

他にも疑問やお悩み事があれば、お気軽にLINEからお声掛けください。

この記事を書いた人
この記事を書いた人

企業の情報システム部門で10年以上、PC・アカウント・社内ネットワーク・Microsoft 365/Google Workspace運用を担当。年間数百件の問い合わせ対応(PC不調、メール送受信、Excel/Word資料、Teams会議、スマホ連携など)を通じて、初心者がつまずくポイントを「再現→原因切り分け→最短解決」の手順に落とし込んできました

現場や身近で実際に起きたトラブルをベースに、手順だけでなく「なぜそうなるか」「失敗しやすい落とし穴」「安全な設定(セキュリティ)」まで含めて解説します。

相談窓口(問い合わせ/LINE等)を設け、記事で解決しないケースも個別にサポートしていますので「パソコンが急に動かなくなった」「スマホの設定がわからない」などの悩みは一人で抱え込まず、お気軽にご相談ください。

【お問い合わせは下記URLから】
https://m32006400n.xsrv.jp/inquiry-form/

【公式LINEは下記URLから】
https://lin.ee/t8TDjcj

uri uriをフォローする
スポンサーリンク
よかったらシェアしてね! /
uri uriをフォローする

コメント

タイトルとURLをコピーしました