IntelliJ IDEA 2026.1 Help

検索テンプレート、修飾子、およびスクリプト制約

構造検索用のテンプレートを作成するときは、基本的にスクリプトを作成します。 スクリプト作成プロセスを簡素化するために、IntelliJ IDEA は、検索テンプレートのプロトタイプとして使用できる事前定義された 検索テンプレートのリストを提供します。

検索テンプレートダイアログ
既存のテンプレートダイアログ

既存の検索と置換テンプレートのリストにアクセスする方法については、 構造的な検索と置換のセクションを参照してください。

各検索または置換テンプレートは、条件 (修飾子) を追加して検索結果を絞り込むことができる変数 $variable_name$ で構成されます。 修飾子は、検索テンプレートの変数に依存します。

検索テンプレートのプレビュー

カウント修飾子

修飾子は、出現回数を指定します。

例: new java.lang.RuntimeException($x$) 検索テンプレートで、 $x$ 変数の場合、 修飾子フィールドに最小数と最大数を指定します。 無制限の最大数を設定するには、修飾子フィールドに空の値を指定します。

カウント修飾子

IntelliJ IDEA は変数に [0,∞] を追加し、指定された範囲の数値を検索します。

参照修飾子

リファレンス 修飾子を使用すると、変数内の他の検索テンプレートを参照できます。

参照には常に事前設定または保存されたテンプレートの名前が含まれ、自動補完を使用してこのフィールドに入力できます。

例: $MethodCalls$ 変数の場合、 リファレンス 修飾子フィールドに アノテーション付きのメソッドを入力します。

参照修飾子

IntelliJ IDEA は、アノテーション付きのメソッドへのメソッド呼び出しを検索します。

型修飾子

タイプ 修飾子は、指定された変数に期待される値または式の型を追加します。

例: $expression$ 変数の場合、 タイプ 修飾子フィールドに int と入力します。

検索ツールウィンドウでボックス式の結果

IntelliJ IDEA は、 ボクシングが実行される場所を整数で検索します。

テキストフィルター

テキスト 修飾子は、正規表現またはプレーンテキストに対して変数をチェックします。

例: 特定のインターフェースを実装するクラスを検索できます。 この場合、 テキスト 修飾子にインターフェースの完全修飾名を追加します。 また、 型階層の中 オプションを選択すると、 Cloneable を間接的に実装するクラスも検索に含まれます。 このオプションが選択されていない場合、 Cloneable を直接実装するクラスのみが含まれます。

テキスト修飾子

スクリプト制約

スクリプト 修飾子は、Groovy スクリプト制約を検索テンプレートに追加します。 スクリプト制約は、特定の言語構造を検索するときに使用されます。

例: 指定された数のパラメーターを持つコンストラクター、または指定された可視性修飾子を持つメンバー

テンプレートで使用されるすべての変数は、 スクリプト制約からアクセスできます。 変数にスクリプト制約を追加すると、IntelliJ IDEAはそれをPSIツリーと照合します。この変数は実際には PSIツリーのノードです。

たとえば、メソッドにマッチする変数、 toString() メソッドがあるとします。 この変数は実際には PsiMethod ノードです。 variable.parent を取得すると、 PsiClass ノードなどが生成されます。 variable.text はメソッドのテキスト全体を表示します。 メソッドの名前だけが必要な場合は、 variable.name を使用できます。

別のケースでは、構造検索と置換変数は、変数、 PsiReferenceExpression への参照など、一部の式に一致することがあります。 式には名前はありませんが、式のテキスト全体を検索すると、その変数が参照している変数の名前が表示されます。

次の既存のテンプレートで使用されているスクリプト制約の構文を確認できます。

  • 定数パラメーターを使用したサンプルメソッドの呼び出し

  • クラス

  • パラメーターのないコンストラクターを持つクラス

  • final ではない static フィールド

  • 未実装または未拡張のインターフェース

  • フィールド / 変数の読み込み

  • 名テンプレートが更新されたフィールド / 変数

既存テンプレートダイアログ
2026 年 3 月 30 日