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

طريقة flags() في نموذج Java و أمثلة

java.regexهذه الصفحة هي تمثيل مسبق لنمط التعبيرات العشوائية.

من هذا النوعcompile()تأخذ هذا الطريقة قيمة نصية تمثل تعبير النمط وتعيدPatternهذه النسخة من هذا الطريقة تأخذ قيمة نصية تمثل تعبير النمط، وهي اسم هذا الطريقة لمتغير compile.

static Pattern compile(String regex)

هذه النسخة من هذا الطريقة تأخذ قيمة عددية تمثل العلامات، وهي اسم هذا الطريقة لمتغير compile بوجود اثنين من المعلمات.

static Pattern compile(String regex, int flags)

هذاالنمطيقدم هذا النوع كل مجال كل يمثل علامة.

الترقيمالمساحة والشرح
1CANON_EQ
عندما تكون قواعد الحرفين المتناظرين متساويةعندماالتناسب
2CASE_INSENSITIVE
يُناسب الحرف، دون النظر في الحالة.
3التعليقات
يُسمح بالمسافات والتعليقات النمطية.
4DOTALL
يزيد هذا من تشغيل نمط dotall. أي يتناسب الحرف النموذجي ‘.’ مع جميع الحروف، بما في ذلك إشارات النهاية للسطر.
5LITERAL
يزيد هذا من تحليل النص المدخل كنص مكتوب. أي أن جميع الحروف النموذجية والسلاسل المضبوطة في السلسلة المدخلة تعتبر حروفًا نصية.
6MULTILINE
يزيد هذا من تشغيل نمط الخطوط المتعددة، أي يعتبر كل سلسلة المدخلات سطرًا واحدًا.
7UNICODE_CASE
يزيد هذا من تشغيلتعرفالتفاوت بين الحروف الكبيرة والصغيرة في اليونيكود، أي عندما يستخدم CASE_INSENSITIVE. إذا تم البحث في الأحرف اليونيكود باستخدام تعبير النمط، فإن كلا الحرفين اليونيكود سيتناسبان.
8UNICODE_CHARACTER_CLASS
يُمكن تشغيل النسخة اليونيكود للعناصر الحالية و POSIX للعناصر الحالية.
9UNIX_LINES
يزيد هذا العلامة من تشغيل نمط Unix.

من هذا النوعflags()يستخدم هذا الطريقة علامات الاستخدام الحالية في النمط الحالي.

مثال

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class COMMENTES_Example {
   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("أدخل اسمك: ");
      String name = sc.nextLine();
      System.out.println("أدخل تاريخ ميلادك: ");
      String dob = sc.nextLine();
      //تعلم الأسلوب باستخدام MM-DD-YYY
      String regex = "^(1[0-2]|0[1-9])/# For Month\n" + "(3[01]|[12][0-9]|0[1-9])/# For Date\n"
+ "[0-9]{4}$ # For Year";
      //إنشاء جسم Pattern
      Pattern pattern = Pattern.compile(regex, Pattern.COMMENTS);
      //إنشاء جسم Matcher
      Matcher matcher = pattern.matcher(dob);
      boolean result = matcher.matches();
      if(result) {
         System.out.println("تاريخ الميلاد المحدد صالح");
      } else {
         System.out.println("تاريخ الميلاد المحدد غير صالح");
      }
      System.out.println("استخدام العلم: " + pattern.flags());
   }
}

نتيجة الخروج

أدخل اسمك:
Krishna
أدخل تاريخ ميلادك:
09/26/1989
تاريخ الميلاد المحدد صالح
استخدام العلم: 4