モジュール java.base
パッケージ java.util.regex

インタフェースMatchResult

既知のすべての実装クラス:
Matcher

public interface MatchResult
マッチ操作の結果。

このインタフェースには、正規検索に対するマッチ結果の判定に使用するクエリー・メソッドが含まれます。 マッチ境界、グループ、およびグループ境界は見ることができますが、MatchResultによる変更は行われません。

導入されたバージョン:
1.5
関連項目:
Matcher
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    int end()
    最後にマッチした文字の後のオフセットを返します。
    int end​(int group)
    このマッチ操作中に指定されたグループによって前方参照された部分シーケンスの、最終文字の後のオフセットを返します。
    String group()
    前回のマッチで一致した入力部分シーケンスを返します。
    String group​(int group)
    前回のマッチ操作で指定されたグループによって前方参照された入力部分シーケンスを返します。
    int groupCount()
    このマッチ結果のパターンに指定されている、前方参照を行う正規表現グループの数を返します。
    int start()
    マッチの開始インデックスを返します。
    int start​(int group)
    このマッチ操作中に指定されたグループによって前方参照された部分シーケンスの、開始インデックスを返します。
  • メソッドの詳細

    • start

      int start()
      マッチの開始インデックスを返します。
      戻り値:
      マッチした最初の文字のインデックス
      例外:
      IllegalStateException - マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合
    • start

      int start​(int group)
      このマッチ操作中に指定されたグループによって前方参照された部分シーケンスの、開始インデックスを返します。

      前方参照を行う正規表現グループは、左から右に1からインデックス付けされます。 グループ0はパターン全体を表します。つまり、m.start(0)m.start()は同じ表現です。

      パラメータ:
      group - この正規表現エンジンのパターンに指定されている前方参照を行う正規表現グループのインデックス
      戻り値:
      グループによって前方参照された最初の文字のインデックス。マッチは成功したがグループ自体はどの部分にもマッチしなかった場合は-1
      例外:
      IllegalStateException - マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合
      IndexOutOfBoundsException - 指定されたインデックスを持つ前方参照を行う正規表現グループがそのパターンに含まれない場合
    • end

      int end()
      最後にマッチした文字の後のオフセットを返します。
      戻り値:
      最後にマッチした文字の後のオフセット
      例外:
      IllegalStateException - マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合
    • end

      int end​(int group)
      このマッチ操作中に指定されたグループによって前方参照された部分シーケンスの、最終文字の後のオフセットを返します。

      前方参照を行う正規表現グループは、左から右に1からインデックス付けされます。 グループ0はパターン全体を表します。つまり、m.end(0)m.end()は同じ表現です。

      パラメータ:
      group - この正規表現エンジンのパターンに指定されている前方参照を行う正規表現グループのインデックス
      戻り値:
      グループによって前方参照された最後の文字の後のオフセット。マッチは成功したがグループ自体はどの部分にもマッチしなかった場合は-1
      例外:
      IllegalStateException - マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合
      IndexOutOfBoundsException - 指定されたインデックスを持つ前方参照を行う正規表現グループがそのパターンに含まれない場合
    • group

      String group()
      前回のマッチで一致した入力部分シーケンスを返します。

      入力シーケンスsのマッチャmの場合、m.group()s.substring(m.start(), m.end())は同じ表現です。

      パターン(a*など)によっては、空の文字列とマッチすることがあります。 これらのパターンが入力シーケンス内の空の文字列とマッチした場合、空の文字列が返されます。

      戻り値:
      文字列形式の、前回のマッチで一致した部分シーケンス(空の場合もある)
      例外:
      IllegalStateException - マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合
    • group

      String group​(int group)
      前回のマッチ操作で指定されたグループによって前方参照された入力部分シーケンスを返します。

      マッチャm、入力シーケンスs、およびグループ・インデックスgの、式m.group(g)s.substring(m.start(g ), m.end(g))は等価です。

      前方参照を行う正規表現グループは、左から右に1からインデックス付けされます。 グループ0はパターン全体を表します。つまり、m.group(0)m.group()は同じ表現です。

      マッチは正常終了したが、指定されたグループが入力シーケンスに検出されなかった場合、nullが返されます。 パターン((a*)など)によっては、空の文字列とマッチすることがあります。 これらのグループが入力シーケンス内の空の文字列とマッチした場合、空の文字列が返されます。

      パラメータ:
      group - この正規表現エンジンのパターンに指定されている前方参照を行う正規表現グループのインデックス
      戻り値:
      前回のマッチ時にグループによって前方参照された部分シーケンス(空の場合もある)。グループが入力の一部へのマッチに失敗した場合はnull
      例外:
      IllegalStateException - マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合
      IndexOutOfBoundsException - 指定されたインデックスを持つ前方参照を行う正規表現グループがそのパターンに含まれない場合
    • groupCount

      int groupCount()
      このマッチ結果のパターンに指定されている、前方参照を行う正規表現グループの数を返します。

      グループ0はパターン全体を表します。 これは、このカウントに含まれません。

      グループ・インデックスがこのメソッドから返された値以下の正の整数である場合は、この正規表現エンジンで有効です。

      戻り値:
      この正規表現エンジンのパターンに指定されている前方参照を行う正規表現グループの数