例を使用したJavaのマッチャーhitEnd()メソッド
java.util.regex.Matcher classは、さまざまな一致操作を実行するエンジンを表します。このクラスのコンストラクターはありません。クラスjava.util.regex.Patternのmatches()メソッドを使用して、このクラスのオブジェクトを作成/取得できます。
hitEnd() メソッドは、前回の一致中に入力データの終わりに到達したかどうかを検証します。到達した場合はtrueを返し、そうでない場合はfalseを返します。このメソッドがtrueを返す場合、より多くの入力データが一致の結果を変更する可能性があることを示します。
たとえば、正規表現「you $」を使用して入力文字列の最後の単語を一致させようとしていて、最初の入力行が「hello how are you」の場合、一致する可能性がありますが、より多くの文を受け入れる場合新しい行の最後の単語が必須の単語(「あなた」)ではない可能性があり、一致結果が偽になります。このような場合、hitEnd()メソッドはtrueを返します。
例
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class HitEndExample { public static void main( String args[] ) { String regex = "you$"; //Reading input from user Scanner sc = new Scanner(System.in); System.out.println("Enter input text: "); String input = sc.nextLine(); //Instantiating the Pattern class Pattern pattern = Pattern.compile(regex); //Instantiating the Matcher class Matcher matcher = pattern.matcher(input); //verifying whether a match occurred if(matcher.find()) { System.out.println("Match found"); } boolean result = matcher.hitEnd(); if(result) { System.out.println("More input may turn the result of the match false"); } else { System.out.println("The result of the match will be true, inspite of more data"); } } }
出力
Enter input text: Hello how are you Match found More input may turn the result of the match false
-
例を使用したJavaのマッチャーrequireEnd()メソッド
java.util.regex.Matcher classは、さまざまな一致操作を実行するエンジンを表します。このクラスのコンストラクターはありません。クラスjava.util.regex.Patternのmatches()メソッドを使用して、このクラスのオブジェクトを作成/取得できます。 一致する場合は、 requireEnd() この(Matcher)クラスのメソッドは、一致結果がfalseになる可能性があるかどうかを検証します。入力が多い場合、このメソッドはtrueを返し、そうでない場合はfalseを返します。 たとえば、正規表現「you $」を使用して入力文字列の最後の単語を一
-
例を使用したJavaのマッチャーpattern()メソッド
java.util.regex.Matcher classは、さまざまな一致操作を実行するエンジンを表します。このクラスのコンストラクターはありません。クラスjava.util.regex.Patternのmatches()メソッドを使用して、このクラスのオブジェクトを作成/取得できます。 pattern() この方法(マッチャー )クラスは、現在のマッチャーによって解釈されたパターン(オブジェクト)をフェッチして返します。 例1 import java.util.Scanner; import java.util.regex.Matcher; import java.util.reg