メールアドレスや郵便番号の形式チェック、ログからの文字列抽出など、正規表現を作るときに使うプロンプトです。「マッチさせたい例」と「マッチさせたくない例」を渡すことで、意図どおりに動く正規表現を作り、各部分の意味も分かりやすく解説します。
テストコードも一緒に出すので、その場で動作を確かめられます。
次の条件で正規表現を作成してください。
■ 使う言語・環境:{例:JavaScript、Python、PHP(preg_match)、エディタの検索}
■ やりたいこと:{例:ログ行から日付とエラーコードを抽出したい}
■ マッチさせたい例:
{1行に1つ}
■ マッチさせたくない例:
{1行に1つ}
ルール:
- 指定した言語の正規表現の仕様に合わせる(名前付きグループなどの対応を確認)
- 過度に複雑にせず、読める正規表現を優先する
- 処理が極端に遅くなるパターン(破滅的バックトラック)を避ける
- 完全な検証が難しい形式(メールアドレスなど)は、限界を正直に説明する
出力:
1. 正規表現
2. 各部分の意味を表で解説
3. 上の例すべてを使ったテストコード(指定言語)
4. 想定していない入力で注意すべき点
メールアドレスや郵便番号の形式チェック、ログからの文字列抽出など、正規表現を作るときに使うプロンプトです。「マッチさせたい例」と「マッチさせたくない例」を渡すことで、意図どおりに動く正規表現を作り、各部分の意味も分かりやすく解説します。
テストコードも一緒に出すので、その場で動作を確かめられます。
マッチさせたい例と、させたくない例をそれぞれ数個ずつ入力するのがコツです。例が多いほど意図どおりの正規表現になります。
出力されたテストコードを実行し、すべて期待どおりか確認してから使ってください。
【入力】JavaScript/やりたいこと:日本の郵便番号(ハイフンあり・なし両方)を判定/マッチさせたい:123-4567, 1234567/させたくない:123-456, 12-34567
【出力イメージ】
/^\d{3}-?\d{4}$/
| 部分 | 意味 |
| ^ | 文字列の先頭 |
| \d{3} | 数字3桁 |
| -? | ハイフンが0個または1個 |