JavaTM Platform
Standard Ed. 6

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()
前回のマッチで一致した入力部分シーケンスを返します。

正規表現エンジン m に入力シーケンス s が指定されている場合、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 はパターン全体を表します。グループ 0 は、このカウントに含まれません。

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

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

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。