English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
java.util.regex.Matcherクラスは、さまざまなマッチング操作を実行するエンジンを表します。このクラスにはコンストラクタがありませんが、以下を使用してアクセスできます。matches()
java.util.regex.Patternクラスのメソッドで作成/このクラスのオブジェクトを取得します。
Matcherクラスのend()メソッドは、現在のオブジェクトが表す最後のマッチングの後のオフセットを返します。
子表达式「 [...]」が入力文字列の中の括弧内に指定された文字をマッチングします。以下の例では、この表現を使用して文字をマッチングします。tここでは、
私たちはこれを使いました。compile()
メソッドは正規表現をコンパイルします。
Matcherオブジェクトを取得します。
matcher()
このメソッドを各マッチングアイテムで呼び出します。
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class EndExample { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter input text: "); String input = sc.nextLine(); String regex = "[t]"; //パターンオブジェクトの作成 Pattern pattern = Pattern.compile(regex); //文字列内の既にコンパイルされたパターンをマッチング Matcher matcher = pattern.matcher(input); int count =0; while (matcher.find()) { int end = matcher.end(); System.out.println(end); } } }
出力結果
Enter input text: Hello how are you welcome to w3codebox 27 32 43
文字tが入力文字列に3回出現するため、3つのオフセット値(それぞれの文字が入力文字列の中での位置を示す)が観察できます。