働く 2025-12-31

【業務効率化】正規表現は"書く"から"生成する"時代へ!ChatGPT活用術と3つの注意点

「正規表現の書き方、また忘れた……」 「この文字列抽出したいだけなのに、なんでこんなに暗号みたいなコードを書かなきゃいけないの?」

Web制作やプログラミング、データ分析の現場で、こんなため息をついたことはありませんか? 正規表現(Regular Expressions)は、テキスト処理において非常に強力なツールですが、その難解な記法は多くのエンジニアやマーケターを苦しめてきました。

しかし、2025年の今、正規表現をゼロから手書きする必要はもうありません。 「正規表現は、AI(ChatGPT)に書いてもらう」のが、最も賢く、効率的な方法だからです。

この記事では、正規表現アレルギーの方でも実践できる「ChatGPTを使った正規表現生成術」と、業務で使う際に必ず知っておくべきリスクと注意点について解説します。


なぜ、正規表現はChatGPTに任せるべきなのか?

正規表現の複雑さとAIによる解決のイメージ

ChatGPT(チャットジーピーティー)は、OpenAIが開発した高度な言語モデルです。 なぜこれが正規表現作成において「最強」のツールと言えるのでしょうか。

1. 自然言語(日本語)で依頼できる

「数字が3桁、ハイフン、数字が4桁のパターンを探して」とチャットで伝えると、\d{3}-\d{4} のような正規表現を瞬時に返してくれます。 記号の意味(\d^ $など)を暗記していなくても問題ありません。

2. 解説とテストデータもセットで作れる

ただコードを出力するだけでなく、「なぜこの書き方なのか」という解説や、「正しく動作するか確認するためのテスト用テキスト」まで生成してくれます。これが学習ツールとしても優秀な理由です。

3. HTMLタグの置換なども爆速

Web制作の現場あるあるですが、「大量の <p> タグを <div> に書き換えたい」といった単純作業も、正規表現を使えば一瞬です。


【実践】ChatGPTで正規表現を作るプロンプト例

では、実際にどのように指示を出せばいいのか、具体例を見てみましょう。

ケース1:HTMLタグの置換

Webサイトの修正で、特定のタグを一括置換したい場合の例です。

入力するプロンプト:

HTMLコード内で、<p>タグで囲まれた部分を<div>タグに置換したいです。 <p>テキスト</p><div>テキスト</div> に変換するための正規表現(検索パターンと置換パターン)を教えてください。

ChatGPTの回答例:

検索パターン: <p>(.*?)</p> 置換パターン: <div>$1</div>

解説: (.*?) はタグの中身をキャプチャグループとして保持し、置換側で $1 として参照します。

これをVS Codeなどのエディタに入力するだけで、何百箇所あっても一瞬で修正完了です。手作業で修正する時間の99%を削減できます。

ケース2:メールアドレスの抽出

テキストデータの中から、メールアドレスだけをリストアップしたい場合にも便利です。

入力するプロンプト:

以下のテキストから、メールアドレスのみを抽出する正規表現をPythonで使える形式で教えて。

[ここにテキストを貼り付け]

これだけで、[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,} といった汎用的なパターンを提示してくれます。


⚠️ ここだけは注意!業務利用における3つのリスク

「便利すぎる!」と思ったあなた。ちょっと待ってください。 ChatGPTは魔法の杖のように見えますが、完璧ではありません。業務で利用する際には、客観的なリスク管理が不可欠です。

1. 「もっともらしい嘘」をつく(ハルシネーション)

ChatGPTは確率に基づいて回答を生成するため、「一見正しそうに見えて、実は動かない(または意図しない挙動をする)正規表現」を出力することがあります。 特に、極めて複雑な条件や、否定先読み(Lookahead/Lookbehind)などが絡む高度なパターンではミスが起こりやすくなります。

  • 対策: 生成された正規表現は、必ず実際の環境やテストツール(Regex101など)で動作確認を行ってください。

2. セキュリティと機密情報の扱い

プロンプトの中に、「実際の顧客名簿」や「社外秘のソースコード」をそのまま貼り付けてはいけません。 標準設定のChatGPT(特に無料版)では、入力データがAIの学習に利用される可能性があります。

  • 対策:
    • 個人名や電話番号は「田中太郎」「090-0000-0000」のようなダミーデータに置き換えてから入力する。
    • 企業で利用する場合は、学習データに利用されない設定(オプトアウト)を行うか、Teamプラン/Enterpriseプランの使用を検討する。

3. 脆弱性を含むコード(ReDoS)のリスク

生成された正規表現が効率的でない場合、「ReDoS(Regular Expression Denial of Service)」という脆弱性の原因になることがあります。特定の文字列を入力されたときに処理が終わらなくなり、サーバーがダウンする恐れがあります。

  • 対策: 公開Webサービスのバリデーション(入力チェック)などに使う場合は、セキュリティエンジニアによるレビューを挟むことを推奨します。

ChatGPT(OpenAI)のサービス情報

これから使い始める方向けの基本情報です。

プラン 価格(月額) 特徴
Free(無料版) 0円 GPT-4o mini等が利用可能。回数制限あり。日常的な正規表現生成ならこれでも十分使えます。
Plus(有料版) $20 USD
(約3,400円 ※)
最上位モデル(GPT-4oなど)が無制限に近い形で利用可能。複雑な推論や画像生成もOK。

※2025年現在、日本円価格は為替レートと消費税(10%)により変動します。


まとめ:AIを「優秀な助手」にして、クリエイティブな時間を増やそう

正規表現の記述に頭を悩ませていた時間は、もう過去のものです。 ChatGPTという「優秀な助手」に面倒なコーディングの一部を任せることで、あなたはより創造的で、価値のある業務に集中できるようになります。

  • 基本はChatGPTに生成させる
  • 人間は、それが正しいか「チェック」し、セキュリティを守る

この役割分担こそが、AI時代の賢い働き方です。 今日から早速、エディタの検索窓を開く前に、ChatGPTに話しかけてみてください。きっとその便利さに驚くはずです!