تنظيف القوائم: متى يكون السطران تكرارًا فعلًا؟

قبل إزالة التكرار من قائمة أسماء أو رموز، حدد ما الذي يجعل عنصرين متساويين. السطر المتشابه للعين ليس دائمًا السجل نفسه، خصوصًا في المعرفات والبيانات الحساسة لحالة الحروف.

قرر معنى المساواة قبل الحذف

إزالة المسافات من الطرفين قد تصلح قائمة منسوخة من بريد، لكنها قد تغير بيانات تحتاج تلك المسافات. تجاهل حالة الحروف قد يجمع Roof وroof، وهو قرار لا يصلح لكل أنواع الرموز.

ToolRoof يتعامل مع كل سطر كعنصر. لا يستنتج أن اسمين لشخص واحد، ولا يوحد أشكال Unicode أو يبدل أرقام محتوى القائمة. احتفظ بالأصل لتراجع ما حُذف.

الترتيب الأبجدي ليس ترتيبًا عدديًا

تختلف المقارنة النصية حسب اللغة. وحتى عند وضوح اللغة، فإن ترتيب أسماء مثل item2 وitem10 ليس بالضرورة ترتيب الأرقام 2 و10؛ الأداة تستخدم ترتيبًا نصيًا لا ترتيبًا رقميًا طبيعيًا.

إذا كان ترتيب الوصول أو الأولوية مهمًا، فاترك الفرز معطلًا. إزالة التكرار تحفظ أول نسخة باقية وفق الخيارات، لكنها لا تعرف أي نسخة أحدث أو أصح.

المراجع: MDN — Locale-sensitive text comparison with Intl.Collator

الأعداد تساعد على المراجعة ولا تثبت صحة القائمة

قارن عدد الأسطر قبل المعالجة وبعدها، ثم افحص عينة من العناصر المتشابهة. قد يكون الانخفاض نتيجة حذف أسطر فارغة أو تكرار، وليس اكتشاف بيانات خاطئة.

هذه أداة نصوص، لا مدقق جهات اتصال أو بريد ولا أداة دمج سجلات. استخدم مثالًا غير حساس لتجربة القاعدة قبل تطبيقها على نسخة تحتاجها في العمل.

مثال: 5 أسطر وقرارات مختلفة

تتكون القائمة من: Roof، ثم roof، ثم Roof محاطة بمسافتين، ثم سطر فارغ، ثم Floor. مع قص المسافات وحذف الفراغ وتجاهل حالة الحروف تصبح Roof ثم Floor: عنصران بدل 5.

مع الاحتفاظ بحساسية حالة الحروف وبقية الخيارات نفسها، تبقى Roof وroof وFloor: 3 عناصر. ليست إحدى النتيجتين أصح دائمًا؛ الاختيار يعتمد على كون الحروف جزءًا من هوية العنصر أم شكل عرض فقط.

المراجع