JavaScript RegEx لا يعمل؟
يتحقق الكود الخاص بك من شرعية تنسيق التاريخ باستخدام تعبير عادي، ولكنه يُرجع دائمًا خطأ. تكمن المشكلة في إنشاء التعبير العادي.
أثناء قيامك بتهيئة التعبير العادي من سلسلة، تحتاج إلى علامات الاقتباس المزدوجة للخطوط المائلة العكسية (\) في النمط. وذلك لأن محلل السلسلة يعامل الخطوط المائلة العكسية كأحرف خاصة لثوابت السلسلة.
رمز غير صحيح:
var regEx = new RegExp("^(0[1-9]|1[0-2])/\d{4}$", "g");
الرمز الصحيح:
var regEx = new RegExp("^(0[1-9]|1[0-2])//\d{4}$", "g");
أو حتى أبسط، استخدم صيغة التعبير العادي دون الحاجة إلى الهروب من الخطوط المائلة:
var regEx = /^(0[1-9]|1[0-2])/\d{4}$/g;
الآن، العادي يجب أن يتطابق التعبير بشكل صحيح مع التواريخ بالتنسيق "MM/YYYY". تأكد من وضع علامة اقتباس مزدوجة لأي شرطات مائلة (/) مضمنة في نمط التعبير العادي.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3