لماذا يستبدل استبدال JavaScript المثيل الأول فقط: استكشاف علامة RegExp
عند استخدام طريقة استبدال JavaScript للعثور على سلسلة واستبدالها بسلسلة أخرى ، فقد تواجه السلوك الذي يتم فيه استبدال المثيل الأول للسلسلة الهدف فقط. يحدث هذا السلوك لأن السلوك الافتراضي للاستبدال هو إجراء عملية بحث واستبدال واحدة غير عمومية.
الاستبدال الشامل: علامة RegExp
لاستبدال الكل في حالة وجود سلسلة مستهدفة في سلسلة، تحتاج إلى تحديد العلامة "العالمية" (g) في التعبير العادي المستخدم في طريقة الاستبدال. تشير هذه العلامة إلى أن عملية البحث والاستبدال يجب أن تتم عبر السلسلة بأكملها، واستبدال كل تكرار للسلسلة الهدف.
على سبيل المثال، في التعليمات البرمجية الخاصة بك:
var date = $('#Date').val(); // e.g., "12/31/2009"
var id = 'c_' date.replace("/", ''); // c_1231/2009 (wrong)
لاستبدال كافة تكرارات الحرف "/"، تحتاج إلى تحديد العلامة "الشاملة":
var id = 'c_' date.replace(new RegExp("/", "g"), ''); // c_12312009 (correct)
بدلاً من ذلك، يمكنك استخدام الصيغة الأقصر:
var id = 'c_' date.replace(/\//g, ''); // c_12312009 (correct)
من خلال تحديد العلامة "الشاملة"، ستستبدل طريقة الاستبدال كل حرف شرطة مائلة في سلسلة التاريخ، مما يؤدي إلى الإخراج الصحيح.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3