# 正規表現構文リファレンス

> For the complete documentation index, see [llms.txt](https://www.jetbrains.com/ja-jp/help/idea/llms.txt).

このセクションは、 [正規表現構文](https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html)の簡単な概要です。 [検索と置換](tutorial-finding-and-replacing-text-using-regular-expressions.html)や課題ナビゲーションパターンの作成に使用できます。

![正規表現のサンプル](https://resources.jetbrains.com/help/img/idea/2026.3/regex_sample_syntax.png)

## RegEx 構文リファレンス

|  文字  |  説明  |
| --- | --- |
|   `\`   |     次の文字を特殊文字またはリテラルとしてマークします。 例:        * `n` は文字 `n` と一致します。 `\n` は改行文字と一致します。    * シーケンス `\\` は `\` と一致し、 `\(` は `(` と一致します。    |
|   `^`   |  入力の始めに一致します。  |
|   `$`   |  入力の終わりに一致します。  |
|   `*`   |  直前の文字と 0 回以上一致します。 例:  `zo*`  は  `z`  または  `zoo`  のいずれかに一致します。  |
|   `+`   |  直前の文字と 1 回以上一致します。 例:  `zo+`  は  `zoo`  と一致しますが、  `z`  には一致しません。  |
|   `?`   |  直前の文字に 0 回または 1 回マッチします。 例:  `a?ve?`  は  `never`  の  `ve`  と一致します。  |
|   `。`   |  改行文字を除く任意の 1 文字と一致します。  |
|   `(`  部分式  `)`   |      部分式 と一致し、その一致を記憶します。 正規表現の一部が括弧で囲まれている場合、正規表現のその部分はグループ化されます。 正規表現演算子をグループ全体に適用できます。        * 同じ正規表現内で一致した部分文字列を使用する必要がある場合は、後方参照 `\num` （ `num = 1..n` ）を使用してそれを取得できます。    * 現在の正規表現の外側のどこかで（たとえば、置換文字列として別の正規表現で）一致した部分文字列を参照する必要がある場合は、ドル記号 `$num` （ `num = 1..n` ）を使用してそれを検索できます。    * 括弧文字を 部分式 に含める必要がある場合は、 `\(` または `\)` を使用してください。    |
|   `x\|y`   |   `x`  または  `y`  のいずれかに一致します。 例:  `z\|wood`  は  `z`  または  `wood`  に一致します。  `(z\|w)oo`  は  `zoo`  または  `wood`  に一致します。  |
|   `{n}`   |   `n`  は負でない整数です。  `n`  回  正確 に一致します。 例:  `o{2}`  は  `Bob`  の  `o`  とは一致しませんが、  `foooood`  の最初の 2 つの o とは一致します。  |
|   `{n,}`   |      `n`  は負でない整数です。  少なくとも   `n`  回一致します。       例:  `o{2,}`  は  Bob  の  o  とは一致しませんが、  `food`  のすべての o と一致します。        `o{1,}`  は  `o+`  に相当します。  `o{0,}`  は  `o*`  に相当します。     |
|   `{n,m}`   |   `m`  と  `n`  は非負整数です。 n  回   以上   m  回  以下の繰り返し に一致します。 例:  `o{1,3}`  は  `food`  の最初の 3 つの「o」に一致します。  `o{0,1}`  は  `o?`  に相当します。  |
|   `[xyz]`   |  文字セット。 囲まれた文字のいずれかと一致します。 例:  `[abc]`  は  `plain`  内の  `a`  と一致します。  |
|   `[^xyz]`   |  否定の文字セット。 囲まれていない任意の文字と一致します。 例:  `[^abc]`  は  `plain`  内の  `p`  と一致します。  |
|   `[a-z]`   |  文字の範囲。 指定された範囲内の任意の文字と一致します。 例:  `[a-z]`  は、  `a`  から  z  までの範囲内の任意の小文字のアルファベット文字と一致します。  |
|   `[^m-z]`   |  負の文字範囲。 指定された範囲外の任意の文字と一致します。 例:  `[^m-z]`  は、  `m`  から  `z`  の範囲外の任意の文字と一致します。  |
|   `\b`   |  単語の境界、つまり単語とスペース間の位置に一致します。 例:  `er\b`  は  `never`  の  `er`  と一致しますが、  `verb`  の  `er`  とは一致しません。  |
|   `\B`   |  非単語境界に一致します。  `ea*r\B`  は  `never early`  の  `ear`  に一致します。  |
|   `\d`   |  数字の文字と一致します。  `[0-9]`  と同等です。  |
|   `\D`   |  非数字の文字と一致します。  `[^0-9]`  と同等です。  |
|   `\f`   |  フォームフィード文字に一致します。  |
|   `\n`   |  改行文字と一致します。  |
|   `\r`   |  キャリッジリターン文字に一致します。  |
|   `\s`   |  スペース、タブ、フォームフィードなどの任意の空白文字に一致します。  `[ \f\n\r\t\v]`  と同等です。  |
|   `\S`   |  空白以外の空白文字と一致します。  `[^ \f\n\r\t\v]`  と同等です。  |
|   `\t`   |  タブ文字に一致します。  |
|   `\v`   |  縦のタブ文字に一致します。  |
|   `\w`   |  アンダースコアを含む任意の単語文字に一致します。  `[A-Za-z0-9_]`  と同等です。 検索フィールドで使用してください。  |
|   `\W`   |  単語以外の任意の文字と一致します。  `[^A-Za-z0-9_]`  と同等です。  |
|   `\num`   |      `num`  と一致します。ここで  `num`  は正の整数で、記憶された一致への後方参照を示します。       例:  `(.)\1`  は 2 つの連続した同一の文字と一致します。     |
|   `\n`   |   `n`  と一致します。ここで  `n`  は 8 進エスケープ値です。 8 進エスケープ値は 1 桁、2 桁、または 3 桁にする必要があります。    例:  `\11`  と  `\011`  はどちらもタブ文字と一致します。        `\0011`  は、  `\001`  &  1  と同等です。       オクタルエスケープ値は 256 を超えてはいけません。 そうした場合、最初の 2 桁だけが式を構成します。 ASCII コードを正規表現で使用できるようにします。     |
|   `\xn`   |      `n`  と一致します。ここで  `n`  は 16 進エスケープ値です。 16 進エスケープ値はちょうど 2 桁である必要があります。       例:  `\x41`  は  `A`  と一致します。  `\x041`  は、  `\x04`  &  `1`        ASCII コードを正規表現で使用できるようにします。     |
|   `\$`   |   `$`  文字を検索します。  |
|   `\\$`   |  検索フィールドのこの正規表現は、行末の  `\`  文字を検索しようとしていることを意味します。  |
|   `\l`   |  次の文字を小文字に変更します。 このタイプの正規表現は、置換フィールドで使用してください。  |
|   `\u`   |  次の文字を大文字に変更します。 このタイプの正規表現は、置換フィールドで使用してください。  |
|   `\L`   |   `\E`  までの文字をすべて小文字に変換します。 このタイプの正規表現は、置換フィールドで使用してください。  |
|   `\U`   |   `\E`  までの以降の文字をすべて大文字に変換します。 このタイプの正規表現は、置換フィールドで使用してください。  |
|   `(?!)`   |  これは否定先読みのパターンです。 例:  `A(?!B)`  は、IntelliJ IDEA が  `A`  を検索することを意味しますが、  `B`  が続かない場合に限ります。  |
|   `(?=)`   |  これは肯定先読みのパターンです。 例:  `A(?=B)`  は、IntelliJ IDEA が  `A`  を検索するが、  `B`  が続く場合にのみ一致することを意味します。  |
|   `(?<=)`   |  これは肯定後読みのパターンです。 例:  `(?<=B)A`  は、IntelliJ IDEA が  `A`  を検索することを意味しますが、その前に  `B`  がある場合のみです。  |
|   `(?<!)`   |  これは否定後読みのパターンです。 例:  `(?<!B)A`  は、IntelliJ IDEA が  `A`  を検索することを意味しますが、その前に  `B`  がない場合のみです。  |

IntelliJ IDEA はすべての標準正規表現構文をサポートしているため、構文の詳細については [https://www.regular-expressions.info](https://www.regular-expressions.info) を確認できます。

## ヒントとトリック。?

IntelliJ IDEA は、 [正規表現の有効性をチェック](null)、説明、編集するためのインテンションアクションを提供します。 正規表現にキャレットを置き、 `Alt+Enter` (Windows), `⌥ ⏎` (macOS), `⌥ ⏎` (IntelliJ IDEA Classic (macOS)), `⌥ ⏎` (macOS System Shortcuts), `Alt+Enter` (XWin), `Alt+Enter` (GNOME), `Alt+Enter` (KDE), `Alt+Enter` (Emacs), `Alt+Enter` (Sublime Text), `⌥ ⏎` (Sublime Text (macOS)), `Alt+Enter` (Visual Studio), `⌥ ⏎` (Visual Studio (macOS)), `Alt+Enter` (NetBeans), `Ctrl+1` (Eclipse), `⌘ 1` (Eclipse (macOS)) を押します。 このコンテキストで利用可能なインテンションアクションの候補リストが表示されます。

![インテンションのコンテキストメニュー](https://resources.jetbrains.com/help/img/idea/2026.3/regexp_intention_actions.png)

* 正規表現の確認 を選択し、 `Enter` (Windows), `⏎` (macOS), `⏎` (IntelliJ IDEA Classic (macOS)), `⏎` (macOS System Shortcuts), `Enter` (XWin), `Enter` (GNOME), `Enter` (KDE), `Enter` (Emacs), `Enter` (Sublime Text), `⏎` (Sublime Text (macOS)), `Enter` (Visual Studio), `⏎` (Visual Studio (macOS)), `Enter` (NetBeans), `Enter` (Eclipse), `⏎` (Eclipse (macOS)) を押します。 ポップアップダイアログの上部ペインに、現在の正規表現が表示されます。 下部ペインに、この正規表現に一致する文字列を入力します。 入力した文字列が正規表現に一致する場合、IntelliJ IDEA は正規表現に緑色のチェックマークを表示します。 正規表現に一致しない場合は、 ![エラーアイコン文脈;](https://resources.jetbrains.com/help/img/idea/2026.3/app.debugger.db_obsolete.svg) が表示されます。 ![現在の正規表現を使ったダイアログ](https://resources.jetbrains.com/help/img/idea/2026.3/check_regexp1.png)

* 正規表現を説明する を選択し、 `Enter` (Windows), `⏎` (macOS), `⏎` (IntelliJ IDEA Classic (macOS)), `⏎` (macOS System Shortcuts), `Enter` (XWin), `Enter` (GNOME), `Enter` (KDE), `Enter` (Emacs), `Enter` (Sublime Text), `⏎` (Sublime Text (macOS)), `Enter` (Visual Studio), `⏎` (Visual Studio (macOS)), `Enter` (NetBeans), `Enter` (Eclipse), `⏎` (Eclipse (macOS)) を押します。 正規表現と一致するためにテキストが満たす必要のある条件を説明するツールチップが開きます。 ![現在の正規表現を使ったダイアログ](https://resources.jetbrains.com/help/img/idea/2026.3/explain_regexp_action.png) 各行には次の情報が表示されます。 1. その行が説明する正規表現フラグメント。 フラグメントの一部がグレー表示されている場合は、 ![フラグメントの左側にある矢印のアイコン](https://resources.jetbrains.com/help/img/idea/2026.3/intellij.platform.ide.expui.general.chevronRight.svg) をクリックして表示できる独自の行があります。 2. フラグメントで使用されている正規表現機能のお名前 (該当する場合)。 [Regular-Expressions.info](https://www.regular-expressions.info/) の対応する記事にハイパーリンクされています。 3. フラグメントと一致するためにテキストが満たす必要のある条件。 > **Tip:** > 有効な [JetBrains AI](ai-assistant-in-jetbrains-ides.html) ライセンスがある場合は、 `![AI Assistant アイコン](https://resources.jetbrains.com/help/img/idea/2026.3/fullLine.icons.previous.aiAssistantColored.svg)AI アクション… | RegExp フラグメントを説明` を選択して AI による説明を呼び出すこともできます。

* 正規表現フラグメントの編集 を選択し、 `Enter` (Windows), `⏎` (macOS), `⏎` (IntelliJ IDEA Classic (macOS)), `⏎` (macOS System Shortcuts), `Enter` (XWin), `Enter` (GNOME), `Enter` (KDE), `Enter` (Emacs), `Enter` (Sublime Text), `⏎` (Sublime Text (macOS)), `Enter` (Visual Studio), `⏎` (Visual Studio (macOS)), `Enter` (NetBeans), `Enter` (Eclipse), `⏎` (Eclipse (macOS)) を押します。 エディター内の別の分割タブで正規表現が開き、編集できます。 これはあくまでスクラッチパッドであり、物理的なファイルは作成されないことに注意してください。 ![現在の正規表現を持つスクラッチファイル](https://resources.jetbrains.com/help/img/idea/2026.3/edit_regexp.png) ![現在の正規表現を持つスクラッチファイル](https://resources.jetbrains.com/help/img/idea/2026.3/py_edit_regexp.png) スクラッチパッドに入力すると、すべての変更が元の正規表現と同期されます。 スクラッチパッドを閉じるには、 `Ctrl+F4` (Windows), `⌘ W` (macOS), `⌘ F4` (IntelliJ IDEA Classic (macOS)), `⌘ W` (macOS System Shortcuts), `Ctrl+F4` (XWin), `Ctrl+F4` (GNOME), `Ctrl+4` (KDE), `Ctrl+F4` (Emacs), `Ctrl+F4` (Sublime Text), `⌘ W` (Sublime Text (macOS)), `Ctrl+F4` (Visual Studio), `⌘ F4` (Visual Studio (macOS)), `Ctrl+F4` (NetBeans), `Ctrl+F4` (Eclipse), `⌘ W` (Eclipse (macOS)) を押します。

## See also

### リファレンス

[ファイル内のターゲットを検索](finding-and-replacing-text-in-file.html) [バージョン管理の設定](settings-version-control.html)

### 外部リンク

[Regex Tutorial](http://www.regular-expressions.info/)

