مطابقة النمط هي استرداد سلسلة تتطابق مع نمط محدد. توفر Java فئة Pattern وفئة Matcher المستخدمة خصيصًا لمطابقة الأنماط.
بعد ذلك، دعونا نتحدث عن خطوات استخدام فئة Pattern وفئة Matcher، على افتراض وجود سلسلة:
Stringinput=hello,goodmorning,thisisgoodidea;
نريد أن نعرف أين يبدأ الإدخال وينتهي حيث تظهر السلسلة الجيدة.
نحتاج أولاً إلى إنشاء كائن نمط واستخدام التعبير العادي regex كمعلمة للحصول على نمط مثيل لفئة النمط التي تسمى النمط:
Patternpattern=Pattern.compile(regex);
على سبيل المثال:
Stringregex=good;pattern=Pattern.compile(regex);
كائنات النمط عبارة عن تغليفات للتعبيرات العادية. تستدعي فئة النمط طريقة الفصل (String regex) لإرجاع كائن نمط، حيث تكون المعلمة regex تعبيرًا عاديًا، يسمى النمط الذي يستخدمه كائن النمط .
إذا كان التعبير العادي المحدد بواسطة معلمة regex غير صحيح، فستقوم طريقة التوافق بطرح استثناء PatternSyntaxException.
يمكن لفئة النمط أيضًا استدعاء طريقة الفصل (String regex، int flags) لإرجاع كائن Pattern. يمكن أن تأخذ إشارات المعلمة القيم الصالحة التالية:
Pattern.CASE_INSENSITIVEPattern.MULTILINEPattern.DOTALLPattern.UNICODE_CASEPattern.CANON_EQ
على سبيل المثال: تأخذ الأعلام القيمة Pattern.CASE_INSENSITIVE، وسيتم تجاهل حالة الأحرف أثناء مطابقة النمط.