جعل preg_match غير حساس لحالة الأحرف
في مقتطف الكود المقدم في السؤال، تمنع حساسية حالة الأحرف من تحقيق النتيجة المقصودة. لتصحيح ذلك، يمكنك استخدام معدل i في تعبيرك العادي، مما يضمن أنه يصبح غير حساس لحالة الأحرف.
إليك كيفية تعديل الكود:
preg_match("#(.{100}$keywords.{100})#i", strip_tags($description), $matches);
بإضافة المعدل i بعد المحدد (# في هذه الحالة)، سيصبح التعبير العادي غير حساس لحالة الأحرف. هذا يعني أنه سيطابق كلاً من الأحرف الكبيرة والصغيرة، مما يحل مشكلة حساسية حالة الأحرف في الكود الأصلي.
يمكن استخدام المُعدِّل i مع أي محدد، وليس فقط #. إذا كنت تستخدم المحدد /، فيمكنك إضافة معدل i بعده بهذه الطريقة:
preg_match("/your_regexp_here/i", $s, $matches); // i means case insensitive
عندما يتم تعيين المعدل i، فإن الحروف الموجودة في النمط ستتطابق مع الأحرف الكبيرة والصغيرة. وهذا يسمح للتعليمات البرمجية بالعمل بشكل صحيح بغض النظر عن حالة الأحرف في سلسلة الإدخال.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3