- 既知のすべての実装クラス:
Matcher
このインタフェースには、正規検索に対するマッチ結果の判定に使用するクエリー・メソッドが含まれます。 マッチ境界、グループ、およびグループ境界は見ることができますが、MatchResult
による変更は行われません。
- 実装上のノート:
- 名前付きグループのサポートは、デフォルトのメソッド
start(String)
、end(String)
およびgroup(String)
によって実装されます。 これらはすべて、namedGroups()
によって返されるマップを使用します。デフォルトの実装では、単にUnsupportedOperationException
がスローされます。 したがって、これらのメソッドが機能するようにnamedGroups()
をオーバーライドするには十分です。 ただし、パフォーマンスやその他の理由で直接上書きすることが望ましい場合があります。 - 導入されたバージョン:
- 1.5
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明int
end()
最後にマッチした文字の後のオフセットを返します。int
end
(int group) このマッチ操作中に指定されたグループによって前方参照された部分シーケンスの、最終文字の後のオフセットを返します。default int
前回のマッチ操作で、指定された名前付きの前方参照を行う正規表現グループによって前方参照された部分シーケンスの、最後の文字の後のオフセットを返します。group()
前回のマッチで一致した入力部分シーケンスを返します。group
(int group) 前回のマッチ操作で指定されたグループによって前方参照された入力部分シーケンスを返します。default String
前回のマッチ操作で指定された名前付きの前方参照を行うグループによって前方参照された入力部分シーケンスを返します。int
このマッチ結果のパターンに指定されている、前方参照を行う正規表現グループの数を返します。default boolean
hasMatch()
this
に以前の一致または検索操作からの有効な一致が含まれているかどうかを返します。キャプチャリング・グループ名からグループ番号への変更不可能なマップを返します。int
start()
マッチの開始インデックスを返します。int
start
(int group) このマッチ操作中に指定されたグループによって前方参照された部分シーケンスの、開始インデックスを返します。default int
前回のマッチ操作で指定された名前付き前方参照グループによって前方参照された部分シーケンスの開始インデックスを返します。
-
メソッドの詳細
-
start
int start()マッチの開始インデックスを返します。- 戻り値:
- マッチした最初の文字のインデックス
- 例外:
IllegalStateException
- マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合
-
start
int start(int group) このマッチ操作中に指定されたグループによって前方参照された部分シーケンスの、開始インデックスを返します。前方参照を行う正規表現グループは、左から右に1からインデックス付けされます。 グループ0はパターン全体を示すため、式m.
start(0)
はm.start()
と同等です。- パラメータ:
group
- このマッチャのパターンのキャプチャリング・グループのインデックス- 戻り値:
- グループによって前方参照された最初の文字のインデックス。マッチは成功したがグループ自体はどの部分にもマッチしなかった場合は
-1
- 例外:
IllegalStateException
- マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合IndexOutOfBoundsException
- 指定されたインデックスを持つ前方参照を行う正規表現グループがそのパターンに含まれない場合
-
start
default int start(String name) 前回のマッチ操作で指定された名前付き前方参照グループによって前方参照された部分シーケンスの開始インデックスを返します。- 実装要件:
- このメソッドのデフォルトの実装では、
namedGroups()
を呼び出してname
引数からグループ番号を取得し、start(int)
の呼出しに対する引数として使用します。 - パラメータ:
name
- このマッチャのパターンの名前付きキャプチャリング・グループの名前- 戻り値:
- グループによって前方参照された最初の文字のインデックス。マッチは成功したがグループ自体はどの部分にもマッチしなかった場合は
-1
- 例外:
IllegalStateException
- マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合IllegalArgumentException
- 指定された名前を持つ前方参照を行う正規表現グループがそのパターンに含まれない場合- 導入されたバージョン:
- 20
-
end
int end()最後にマッチした文字の後のオフセットを返します。- 戻り値:
- 最後にマッチした文字の後のオフセット
- 例外:
IllegalStateException
- マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合
-
end
int end(int group) このマッチ操作中に指定されたグループによって前方参照された部分シーケンスの、最終文字の後のオフセットを返します。前方参照を行う正規表現グループは、左から右に1からインデックス付けされます。 グループ0はパターン全体を示すため、式m.
end(0)
はm.end()
と同等です。- パラメータ:
group
- このマッチャのパターンのキャプチャリング・グループのインデックス- 戻り値:
- グループによって前方参照された最後の文字の後のオフセット。マッチは成功したがグループ自体はどの部分にもマッチしなかった場合は
-1
- 例外:
IllegalStateException
- マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合IndexOutOfBoundsException
- 指定されたインデックスを持つ前方参照を行う正規表現グループがそのパターンに含まれない場合
-
end
default int end(String name) 前回のマッチ操作で、指定された名前付きの前方参照を行う正規表現グループによって前方参照された部分シーケンスの、最後の文字の後のオフセットを返します。- 実装要件:
- このメソッドのデフォルトの実装では、
namedGroups()
を呼び出してname
引数からグループ番号を取得し、end(int)
の呼出しに対する引数として使用します。 - パラメータ:
name
- このマッチャのパターンの名前付きキャプチャリング・グループの名前- 戻り値:
- グループによって前方参照された最後の文字の後のオフセット。マッチは成功したがグループ自体はどの部分にもマッチしなかった場合は
-1
- 例外:
IllegalStateException
- マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合IllegalArgumentException
- 指定された名前を持つ前方参照を行う正規表現グループがそのパターンに含まれない場合- 導入されたバージョン:
- 20
-
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
- 指定されたインデックスを持つ前方参照を行う正規表現グループがそのパターンに含まれない場合
-
group
前回のマッチ操作で指定された名前付きの前方参照を行うグループによって前方参照された入力部分シーケンスを返します。一致が成功したが、指定されたグループが入力順序の任意の部分に一致しなかった場合、
null
が返されます。(a*)
などの一部のグループは、空の文字列と一致することに注意してください。 これらのグループが入力シーケンス内の空の文字列とマッチした場合、空の文字列が返されます。- 実装要件:
- このメソッドのデフォルトの実装では、
namedGroups()
を呼び出してname
引数からグループ番号を取得し、group(int)
の呼出しに対する引数として使用します。 - パラメータ:
name
- このマッチャのパターンの名前付きキャプチャリング・グループの名前- 戻り値:
- 前回の一致時に名前付きグループによって取得された(おそらく空の)部分列、またはグループが入力の一部の一致に失敗した場合は
null
- 例外:
IllegalStateException
- マッチがまだ試みられていない場合、または前回のマッチ操作が失敗した場合IllegalArgumentException
- 指定された名前を持つ前方参照を行う正規表現グループがそのパターンに含まれない場合- 導入されたバージョン:
- 20
-
groupCount
int groupCount()このマッチ結果のパターンに指定されている、前方参照を行う正規表現グループの数を返します。グループ0はパターン全体を表します。 これは、このカウントに含まれません。
グループ・インデックスがこのメソッドから返された値以下の正の整数である場合は、このマッチャで有効です。
- 戻り値:
- このマッチャのパターンに指定されている前方参照を行う正規表現グループの数
-
namedGroups
キャプチャリング・グループ名からグループ番号への変更不可能なマップを返します。 名前付きグループがない場合は、空のマップを返します。- APIのノート:
- このメソッドは、指定されたグループをサポートする実装でオーバーライドする必要があります。
- 実装要件:
- このメソッドのデフォルト実装は常に
UnsupportedOperationException
をスロー - 戻り値:
- キャプチャリング・グループ名からグループ番号への変更不可能なマップ
- 例外:
UnsupportedOperationException
- 実装が指定されたグループをサポートしていない場合。- 導入されたバージョン:
- 20
-
hasMatch
default boolean hasMatch()this
に以前の一致または検索操作からの有効な一致が含まれているかどうかを返します。- 実装要件:
- このメソッドのデフォルト実装は常に
UnsupportedOperationException
をスロー - 戻り値:
this
に有効な一致が含まれているかどうか- 例外:
UnsupportedOperationException
- 一致があるかどうかを実装でレポートできない場合- 導入されたバージョン:
- 20
-