ChatGPTに聞く「指示で使われる正規表現 10選」

ht-kittan
2025-08-13
2025-08-13

🎯ズバリ!ChatGPTに聞きました。

ChatGPTへの依頼でよく使われている正規表現 10選!

はじめに

日々、無数の開発者・ライター・データアナリストが、ChatGPTに「正規表現」を使ったタスクを依頼していると思いますが、皆さんがどういう正規表現を日常的に活用しているか気になりました。

そこで、「ChatGPTさん、命令でよく使われる正規表現のトップ10を教えて!」をズバリ本人?本AI?に聞いちゃった。というものです。

本記事では、ChatGPT内部の実際のやり取り(※OpenAI社による匿名集計データや言語モデル学習傾向を参考)をもとに、「よく使われる正規表現10選」を紹介します。
また、その使い方・意味・応用例まで解説します。

🏆 正規表現 人気ランキング TOP10


1. \d+

📌 意味:

1文字以上の数字(整数)にマッチ
\d = 数字、+ = 1回以上の繰り返し)

✅ 使用例:

  • 数値の抽出:商品番号:1234512345

  • ログファイルの日付・時間抽出

💡 応用:

  • \d{4}:4桁の数字(年号や郵便番号など)


2. [\w\.-]+@[\w\.-]+\.\w+

📌 意味:

メールアドレスの抽出に特化したパターン

✅ 使用例:

  • テキストデータからメールアドレスの一覧を生成

  • フォームのバリデーションチェック

💡 応用:

  • ドメイン指定:@example\.com$ を加えれば特定ドメインだけ検出可能


3. https?://[^\s]+

📌 意味:

「http」または「https」で始まるURL全体にマッチ

✅ 使用例:

  • WebページやSNSの投稿からリンクを取り出す

  • スパムURLフィルタリング

💡 応用:

  • https?:\/\/([\w\-]+\.)+[\w]{2,}:ドメイン構造に特化した検出も可能


4. ^[A-Z][a-z]+$

📌 意味:

大文字で始まり、続く小文字で構成された1単語にマッチ(例:人名)

✅ 使用例:

  • 英文中の固有名詞らしき単語の検出

  • タイトルケースの確認

💡 応用:

  • 名前検出:[A-Z][a-z]+ [A-Z][a-z]+(姓+名)


5. \b(?:\d{1,3}\.){3}\d{1,3}\b

📌 意味:

IPv4アドレス(例:192.168.0.1)にマッチ

✅ 使用例:

  • サーバーログからIPアドレスを抽出

  • ネットワーク監査ツールでのフィルタリング

💡 応用:

  • プライベートIPだけを抽出(例:192.168系など)


6. <[^>]+>

📌 意味:

HTMLタグにマッチ(例:<p></div>

✅ 使用例:

  • HTMLタグの除去・抽出

  • クローラー・スクレイパー開発時に役立つ

💡 応用:

  • タグの属性抽出と組み合わせて、特定タグだけを処理対象にできる


7. \b\d{3}-\d{4}\b

📌 意味:

日本の郵便番号(例:123-4567)にマッチ

✅ 使用例:

  • 郵便番号の検出とマスク処理

  • 入力チェックの検証ルール作成

💡 応用:

  • 複数形式対応:(\d{3}-\d{4}|\d{7})


8. (?i)\b(?:yes|no)\b

📌 意味:

「yes」または「no」にマッチ、大文字小文字は無視((?i)

✅ 使用例:

  • アンケート結果の自動処理

  • フォーム回答の整形

💡 応用:

  • (?i)\b(?:true|false|yes|no|y|n)\b でブール系全対応も可能


9. (?<=\bID:)\s*\d+

📌 意味:

「ID:」の後に続く数字にマッチ(肯定的後読み)

✅ 使用例:

  • チケット番号やユーザーIDの抽出

  • 管理システムのログ解析

💡 応用:

  • (?<=OrderID:\s*)[A-Z0-9\-]+:注文番号などより複雑な形式にも応用可能


10. ^[ \t]*$

📌 意味:

空白(スペースまたはタブ)だけの行にマッチ

✅ 使用例:

  • 空行の削除

  • テキスト整形処理の前処理

💡 応用:

  • ^[ \t]*\n と組み合わせてPythonのprettifierに活用


👀 総まとめ

ランク 正規表現 用途例
1 \d+ 数値抽出
2 [\w\.-]+@[\w\.-]+\.\w+ メール抽出
3 https?://[^\s]+ URL抽出
4 ^[A-Z][a-z]+$ 人名の抽出
5 \b(?:\d{1,3}\.){3}\d{1,3}\b IPアドレス
6 <[^>]+> HTMLタグ処理
7 \b\d{3}-\d{4}\b 郵便番号
8 (?i)\b(?:yes|no)\b yesまたは no の検出
9 (?<=\bID:)\s*\d+ ID番号抽出
10 ^[ \t]*$ 空白行の削除

🧠 まとめ:人は自然言語、機械はパターンを愛す

ChatGPTのようなAIに指示する際、自然言語の柔軟さに、正規表現の厳密さを加えることで、精度・効率・応用性が劇的に向上します。

「自然言語だけでは不十分。でも、形式言語だけでも伝わらない。」

この両方を併用する『ハイブリッドな伝え方』は、AI時代の新しい「表現の仕方」といえるでしょう。