English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

مثال على استخدام Matcher hitEnd () في Java

java.util.regex.Matcher中的类代表一个引擎,进行各种匹配操作。该类没有构造函数,可以使用matches()类java.util.regex.Pattern的方法创建/获取该类的对象。

hitEnd()方法,检验是否如果是这样,则返回true,否则返回false以前的比赛中达到输入数据的末尾。如果此方法返回true,则表明更多输入数据可能会更改匹配结果。

例如,如果您尝试使用正则表达式“ you $”将输入字符串的最后一个单词与您匹配,并且如果您的第一个输入行是“你好,你好吗”,则可能有匹配项,但是,如果您接受更多句子新行的最后一个单词可能不是必需的单词(即“ 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$";
      //从用户读取输入
      Scanner ل = لnew لScanner(لSystem.in);
      System.out.println("أدخل النص المدخل:");
      String input = sc.nextLine();
      //إنشاء Pattern class
      Pattern pattern = Pattern.compile(regex);
      //إنشاء Matcher class
      Matcher matcher = pattern.matcher(input);
      //تحقق من إحداث التطابق
      if(matcher.find()) {
         System.out.println("تم العثور على تطابق");
      }
      boolean result = matcher.hitEnd();
      if(result) {
         System.out.println("المزيد من المدخلات قد يجعل نتيجة التطابق غير صحيحة");
      }
         System.out.println("النتيجة الخاصة بالتطابق ستكون صحيحة، رغم وجود بيانات إضافية");
      }
   }
}

نتيجة الخروج

أدخل النص المدخل:
مرحبًا كيف حالك
تم العثور على تطابق
المزيد من المدخلات قد يجعل نتيجة التطابق غير صحيحة
أنت قد تحب