أثناء عملية البرمجة ، تحتاج غالبًا إلى التحقق من تنسيق بيانات الإدخال. من أجل التحقق مما إذا كانت بيانات الإدخال تلبي تنسيقًا معينًا ، يمكنك استخدام طريقة Matches () في فئة السلسلة للحكم.
مباريات منطقية (regex سلسلة)
Regex: حدد التعبير العادي.
قيمة الإرجاع: نوع Back Boolean.
يتم استخدام هذه الطريقة لإبلاغ السلسلة الحالية بالتعبير العادي المحدد بواسطة المعلمة REGEX.
التعبيرات العادية تتكون من شخصيات ذات معاني خاصة. للترجمة.
.: يمثل أي حرف.
/D: يمثل أي عدد من 0-9.
/D: يمثل أي طابع غير نقيض.
/S: يمثل أحرف فارغة.
/S: يمثل أحرف غير بنك.
/W: يعني الحرف الذي يمكن استخدامه كمعرف ، ولكنه لا يشمل "$".
/W: هذا يعني الحرف الذي لا يمكن استخدامه كمعرف.
/P {Lower}: يمثل حرفًا صغيرًا A ~ z.
/p {apport}: يمثل أحرفًا كبيرة A ~ a.
/P {ASCII}: حرف ASCII.
/p {alpha}: حرف حرف.
/P {Digit}: رقم عشري ، 0-9.
/p {alnum}: أرقام أو أحرف الحروف.
/P {Punch}: رمز علامات الترقيم.
/P {Graph}: حرف مرئي.
/p {print}: يمكنك طباعة الأحرف.
/p {blank}: فارغة أو صناعة الساعات.
/p {cntrl}: حرف التحكم.
عند استخدام تعبيرات منتظمة ، إذا كان هناك نوع معين من أحرف التعريف ، فمن المفيد للغاية إدخال واحد تلو الآخر. معناها مدرجة أدناه.
؟: 0 أو 1 مرات.
*: 0 مرات أو عدة مرات.
+: 0 أو 1 مرات.
{n}: كرر n مرات.
{n ،}: كرر على الأقل n مرات.
{n ، m}: كرر n ~ m مرات.
في التعبيرات العادية ، يمكنك أيضًا إرفاق أحرف متعددة بين قوسين مربعة.
[ABC]: يمثل A أو B أو C.
[^ABC]: يشير إلى أي أحرف أخرى غير A و B و C.
[A-ZA-Z]: أي حرف من ~ z أو A ~ Z.
[م [MP]]: أي حرف من A ~ D أو M ~ P.
[AZ && [DEF]]: D ، E أو F.
[AZ && [^BC]]]: لا يحتوي A ~ z على جميع أحرف B و C بين B و C.
[az && [^mp]]]: لا يحتوي ~ z على جميع أحرف m ~ p بين.
مثال:
1. رقم لوحة الترخيص:
/*: سلسلة جديدة [] {"Jing" ، "Jin" ، "Ji" ، "Jin" ، "Liao" ، "Ji" ، "Black" ، "Shanghai" ، "Su" ، "Anhui" ، "Fujian" ، " Fujian "،" Fujian "،" Fujian "،" Fujian "،" Fujian "،" Fujian "،" Fujian "" Gan "،" Lu "،" Yu "،" Hubei "،" Xiang "،" Guangdong "، "واجهة المستخدم الرسومية" ، "Qiong" ، "Chong" ، "Sichuan" "} ؛ string reg ="/u4e00-/u9fa5] {1} [az] {1} [a-z_0-9] {5} "؛ boolean firstchar = false ؛ if (carnum.length ()> 0) { Firstchar = Arrays.Aslist (Provente). {result = true ؛} آخر {result = fals e ؛}} catch (استثناء e) {E.PrintStackTrace () ؛} return return ؛}2. رقم الهاتف المحمول:
/**** Descripting: تحقق من رقم الهاتف المحمول*param mobilenum 15516985859* @REGRENT LEGAL: TRUE غير قانوني: خطأ*/ismobilenum الثابت العام (String mobilenum) compile ("^(13 [0-9]) | (15 [^4 ، // d]) | (18 [0،5-9]) // d {8} $") ؛ = ص.رقم الهاتف المحمول+رقم الهاتف الثابت: 010-111111111115516985859،0377-1111111
// اختبار java ما إذا كان رقم هاتف (الهاتف المحمول ، التحقق من الهاتف الثابت) string phone = "" "" ؛ regexp = "^((13 [0-9]) | (15 [^4 ، // // D]) |. ". يتم استخدام جميعها.
3. الرقم الحقيقي:
string [] arrs = new string [] {"a" ، "1.123" ، "-1.23" ، "0" ، "+111"} ؛ = pattern.compile (regex) ؛ ؛}مطبعة:
ج: خطأ
1.123: صحيح
-1.23: صحيح
0: صحيح
+111: خطأ