الدرس 6 من 8
النصّ المتناظر
- 12 دقيقة
- 6 معايير للتصحيح
- 3 تلميحات
- إلى المطلوب
هدف الدرس
يُقرأ من الجهتين سواء
الشرح
«كمالك تحت كلامك» تُقرأ من اليمين ومن اليسار سواء — إن تجاهلت المسافات. والفحص الصحيح خطوتان: تطبيع النصّ، ثم مقارنة طرفيه.
التطبيع: أحرف صغيرة، وحذف كل ما ليس حرفًا أو رقمًا. و/[^\p{L}\p{N}]/gu يفعلها لكل اللغات معًا — والتشكيل علامات لا حروف فيسقط معها، والعلامة u شرط لعمل \p{…}. ثم مؤشّران من الطرفين يتقاربان ويقارنان، ويتوقّفان عند أول اختلاف بلا نسخة مقلوبة.
الفخّ: /[^a-z0-9]/g يمسح الحروف العربية كلّها، فتصير كل جملة عربية نصًّا فارغًا — والفارغ متناظر، فتجيب الدالة «نعم» عن أي شيء.
المطلوب
اكتب normalize(text) تُرجع النصّ مطبَّعًا، وisPalindrome(text) تطبّعه ثم تقارن بمؤشّرين وتُرجع true أو false.
معايير التصحيح
6 معايير- normalize تحذف المسافات والترقيم وتصغّر الحروف
- وتُبقي الحروف العربية بلا تشكيل
- جملة إنجليزية متناظرة
- جملة عربية مشكولة متناظرة
- نصّ عربي غير متناظر يُرجع false
- الطول الزوجي والفردي