◯ 無料:1日5回 • リセットまで 17h 10m
開発 & 技術

正規表現ジェネレータ

プレーンな英語の説明を、JavaScript、Python、PCRE、Go、Java、.NET 用の実用的な正規表現に変換します — トークンごとの説明、テストケース、そしてパターンが意図的にマッチする・しないエッジケースを提供します。

もっと知る

Regex Generator は、マッチすべき内容の説明から、実際に使用するフレーバー(JavaScript、Python、PCRE、Go の RE2、Java、.NET)に合わせた正規表現を生成し、検証まで行います。各トークンの説明、マッチすべき文字列とマッチすべきでない文字列の例の検証、追加のテストケース、使用言語のコードスニペット、意図的に除外するエッジケースに関する注記が提供されます。また、Go における後方参照のように、フレーバーで実現できない要件がある場合は、コンパイルできないパターンを黙って生成するのではなく、警告を表示します。

0 / 3000
0 / 10000
0 / 10000

✓ 無料で利用可能 — 登録不要、クレジットカード不要。

開発者

会社のメールアドレスのみ

無料のウェブメールドメインを除外するサインアップバリデーション

入力と出力のプレビューを見る

入力

パターンは何にマッチすべきですか?
Email addresses on the company domains acme.com and acme.co.uk, case-insensitive. Reject everything else, including gmail and addresses with nothing before the @.
正規表現のフレーバー
JavaScript / TypeScript
マッチすべき例(1行ずつ)
[email protected] [email protected]
マッチすべきでない例(1行ずつ)
[email protected] @acme.com
厳密さ
実用的(読みやすく、一般的なケースをカバー)

出力(抜粋)

```javascript
/^[a-z0-9._%+-]+@acme\.(?:com|co\.uk)$/i
```

**Flags:** `i` — ドメインとローカルパートは大文字小文字を区別せずに比較されます。

| トークン | 意味 |
|---|---|
| `^` … `$` | 文字列全体がアドレスである必要があります |
| `[a-z0-9._%+-]+` | ローカルパート: 1 文字以上の英字、数字、または一般的な句読点 |
| `@acme\.` | リテラル @acme. — ドットはエスケープされています |
| `(?:com\|co\.uk)` | 2 つの会社ドメインのうちいずれか 1 つ |

| 入力 | 期待結果 | 理由 |
|---|---|---|
| `[email protected]` | マッチ | 単純なローカルパート、許可されたドメイン |
| `[email protected]` | マッチ | ローカルパートにドット、2 番目のドメイン |
| `[email protected]` | マッチしない | リストにないドメイン |
| `@acme.com` | マッチしない | ローカルパートが空 |
| `[email protected]` | マッチしない | アンカーされており、続く文字は許可されない |
…
すべての方向け

ISO 8601 カレンダー日付

ログ行から日付を抽出してから解析する

入力と出力のプレビューを見る

入力

パターンは何にマッチすべきですか?
ISO calendar dates like 2026-09-20 anywhere inside a line of text. Month 01-12, day 01-31. Do not match 2026-13-01 or 26-09-20.
正規表現のフレーバー
Python (re)
マッチすべき例(1行ずつ)
deployed 2026-09-20 at 05:01 2024-02-29
マッチすべきでない例(1行ずつ)
2026-13-01 26-09-20
厳密さ
厳格(無効なものはすべて除外)

出力(抜粋)

```python
r"(?<!\d)(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])(?!\d)"
```

**Flags:** なし。日付が行の中にあるため、パターンはアンカーされていません。

| トークン | 意味 |
|---|---|
| `(?<!\d)` | 数字に前置されていない — `12026-09-20` を除外 |
| `(\d{4})` | 4 桁の年、キャプチャ |
| `(0[1-9]\|1[0-2])` | 月 01-12 |
| `(0[1-9]\|[12]\d\|3[01])` | 日 01-31 |
| `(?!\d)` | 数字に続かない |

**Edge cases:** パターンは月の日数を考慮しません — `2026-02-31` がマッチします。抽出後に `datetime.date.fromisoformat()` で検証してください。使用例スニペットが示すように…

正規表現ジェネレータ の結果がここに表示されます

コメント付きの整理されたコードブロックと、変更点の簡単な説明が得られます。

使い方 正規表現ジェネレータ

  1. パターンがマッチすべき内容を平易な言葉で記述し、除外すべきものも含めてください — 「企業のメールアドレス、フリーメールは除外」 のように具体的に書く方が「メール」より良いです。
  2. 使用するフレーバーを選択してください。Go、JavaScript、Python、Java、.NET、PCRE は、ルックアラウンドのサポート、Unicode の扱い、エスケープ方法が異なります。
  3. マッチすべき文字列とマッチすべきでない文字列をそれぞれ数行、1行ずつ貼り付けてください。パターンはそれらすべてに対して検証されます。
  4. 厳密さを選択してください:通常の入力をカバーする読みやすいパターンには「実用的」、検証目的には「厳格」、広く捕捉して後でフィルタする場合は「寛容」

使用例

1

郵便番号、ナンバープレート、内部ID形式など、フォーム入力の検証

2

ログ行やメールから日付、請求書番号、注文参照を抽出

3

エディタやマイグレーションスクリプトでの一括クリーンアップ用の検索置換を構築

4

コードベースに残されたレガシーパターンを、説明として貼り付けて解説

5

Python から Go へスクリプトを移行する際に、パターンをあるフレーバーから別のフレーバーへ変換

最高の結果を得るためのヒント

  • マッチしない例を示してください — それは、マッチすべき例よりもパターンを研ぎ澄ますのに効果的です。
  • 言語文字列内で必要な場合は、そのフレーバーを指定してください:エスケープは回答の一部です。
  • ユーザー向けバリデーションでは「Strict」を選び、リリース前にエッジケースのセクションを読んでください。
  • 信頼できない入力に対して入れ子の繰り返しを含むパターンはサーバーをハングさせる可能性があります;そのリスクがある場合、出力が警告します。

よくある質問

どの正規表現フレーバーがサポートされていますか?

JavaScript と TypeScript、Python の re モジュール、PCRE(PHP、Ruby、Perl)、Go の RE2 エンジン、Java と .NET。パターンは選択した言語のリテラルとして記述され、その言語が必要とするエスケープが適用されます。

パターンをテストしますか?

提供したすべての例は、期待結果と理由とともにテスト表に列挙されます。ツールは境界ケース(空入力、空白、ほぼ一致)も追加するので、何が通過するかを確認できます。

Go で「要件が不可能です」と表示されるのはなぜですか?

Go の RE2 エンジンは線形時間のマッチングを保証するため、先読み・後読みや後方参照をサポートしません。記述にそれらが必要な場合、ツールはその旨を示し、RE2 がコンパイルできる最も近いパターンを提示します。通常はコード内で小さなチェックを追加します。

Practical、Strict、Lenient の違いは何ですか?

Practical パターンは読みやすく、実際に見る入力をカバーします。Strict パターンは有効でないすべての文字列を拒否し、長さと可読性が犠牲になります — バリデーションに使用してください。Lenient パターンは広く捕捉し、後でコードでフィルタリングできるようにします — 雑多なテキストから抽出する際に使用してください。

既存の正規表現を説明できますか?

はい。説明に既存のパターンを貼り付けて「explain this」と入力すると、出力はトークンごとに解説し、マッチする内容を列挙し、致命的なバックトラッキングのリスクを指摘します。

🔒
あなたのプライバシーは保護されています

入力内容と結果は、サービスの運営、不正利用の防止、ログイン中の方への履歴表示のため、最長90日間保管します。処理はプライバシーポリシーに記載のAIプロバイダーが行います。第三者に販売することはありません。

関連ツール

このエージェントを試す

APIオートメーションエージェント自動化を平易な英語で記述 → REST/webhook レシピ → curl + Python + Node サンプル → AICT パブリック API エンドポイントにマッピング。このエージェントを試す →

関連ワークフロー

ブランドアイデンティティを構築するコンセプトから一貫したビジュアルシステムへワークフローを実行 →

もっと読む