الانتقال إلى الأداة
ViewCSV
الملفات تبقى على جهازك

تنظيف بيانات CSV

signups.csv· بيانات نموذجية7 صفوف · 6 أعمدة
القيم
أحرف التحكم والمسافات صفرية العرض وعلامات ⁦BOM⁩ الشاردة. تبقى علامات الجدولة وفواصل الأسطر.
يجعل الحرف المكتوب بصيغتين مختلفتين، مثل «آ» حرفًا واحدًا أو «ا» مع علامة المد، متطابقًا، فتتساوى القيم عند المقارنة وإزالة التكرار.
التطبيق على الأعمدة
عدم تحديد أي عمود = كل الأعمدة.
الصفوف والأعمدة
الإبقاء على
القيم المعدّلة: 2 · الصفوف الفارغة المحذوفة: 1 · الصفوف المكررة المحذوفة: 1
النتيجة
#idnameemailagesignup_dateplan
11محمد العليfirst@example.test342026-01-04pro
22فاطمة الحسنnot-an-emailthirty2026-02-30Pro
33أحمد المصريthird@example.test·2026-03-11free
45علي القحطانيN/A5111/03/2026team
56نور الحربيsixth@example.test272026-04-01enterprise

المدخلات: 7 صفوف. النتيجة: 5 صفوف · 6 أعمدة.

بعد فتح ملف CSV أو لصقه تظهر النتيجة المنظَّفة بجوار الخيارات. افتراضيًا تزيل الأداة المسافات من بداية كل قيمة ونهايتها، وتحذف الصفوف الفارغة والصفوف المتطابقة في كل الأعمدة مع الإبقاء على أولها. ويمكن تفعيل خطوات أخرى عند الحاجة، مثل تفريغ ⁦NULL⁩ و⁦N/A⁩، أو إزالة الأحرف غير المرئية، أو إزالة التكرار حسب عمود البريد الإلكتروني، وتَعُدّ الملاحظة فوق النتيجة ما تغيّر. لا يُعدَّل صف العناوين أبدًا. يُعالَج الملف في متصفحك ولا يُرفع.

طريقة تنظيف ملف CSV

  1. افتح ملف ⁦.csv⁩ أو ⁦.tsv⁩ أو ⁦.txt⁩، أو أفلته على الأداة، أو الصق الصفوف. يُكتشف المحدِّد وعلامة ترتيب البايت لـ⁦UTF-8⁩ أو ⁦UTF-16⁩؛ ولاختيار محدِّد آخر أو ترميز قديم توجد إعدادات الاستيراد.
  2. تحت القيم اختر إصلاحات الخلايا. ويقصرها التطبيق على الأعمدة على أعمدة بعينها؛ وإن لم يُحدَّد أي عمود فهي تشمل كل الأعمدة.
  3. تحت الصفوف والأعمدة اختر طريقة التعامل مع الصفوف الفارغة والتكرارات والأعمدة الفارغة.
  4. راجع الملاحظة فوق النتيجة وقارنها بعلامة التبويب المدخلات، ثم اختر تنزيل CSV أو نسخ أو فتح في المحرر.

بعد تنظيف البيانات يمكن فحصها وفق قواعد الأعمدة بأداة التحقق من CSV، أو تغيير المحدِّد وعلامات الاقتباس بأداة تنسيق CSV.

ما تفعله كل خطوة، بترتيب تنفيذها

تمر كل قيمة على الخطوات المفعّلة بهذا الترتيب الثابت، فتكون النتيجة واحدة مهما كان ترتيب النقر على الخيارات.

توحيد ترميز Unicode ‏(NFC)يجعل ⁦é⁩ المكتوبة حرفًا واحدًا و⁦e⁩ مع علامة مركّبة نصًا واحدًا، فتتطابق وتُزال تكراراتها. معطّل افتراضيًا.
إزالة الأحرف غير المرئيةيزيل أحرف التحكم والمسافات وأحرف الوصل صفرية العرض، وحرف ربط الكلمات (word joiner)، وعلامات ترتيب البايت الشاردة. تبقى علامات الجدولة وفواصل الأسطر. معطّل افتراضيًا؛ ويُترك معطّلًا مع تسلسلات الرموز التعبيرية أو أنظمة الكتابة التي تعتمد على أحرف الوصل صفرية العرض.
اعتبار هذه القيم فارغةقائمة مفصولة بفواصل مثل ⁦NULL, N/A, -⁩. القيمة التي تساوي إحداها، مع تجاهل المسافات حولها، تصبح فارغة. المطابقة حساسة لحالة الأحرف، لذا تُكتب ⁦null⁩ و⁦NULL⁩ كلتاهما إذا ظهرتا معًا. فارغة افتراضيًا.
إزالة المسافات من البداية والنهايةيزيل المسافات البيضاء في البداية والنهاية، بما فيها المسافات غير القابلة للكسر وفواصل الأسطر عند الأطراف. مفعّل افتراضيًا.
دمج المسافات المتكررة داخل القيميحوّل كل سلسلة من مسافتين أو أكثر، أو علامات الجدولة، أو المسافات غير القابلة للكسر أو المسافات الإيديوغرافية، إلى مسافة واحدة. لا يمس فواصل الأسطر. معطّل افتراضيًا.
حالة الأحرفدون تغيير أو أحرف صغيرة (lowercase) أو أحرف كبيرة (UPPERCASE) أو أول حرف كبير (Title Case). يحوّل خيار «أول حرف كبير» القيمة إلى أحرف صغيرة ثم يكبّر أول حرف بعد مسافة أو شرطة أو شرطة مائلة أو قوس افتتاحي، فتصبح ⁦MCDONALD⁩ ⁦Mcdonald⁩ وتصبح ⁦o'neil⁩ ⁦O'neil⁩. ولا أثر لهذه الخيارات في الحروف العربية لأنها لا تعرف حالة الأحرف.
فواصل الأسطر داخل القيمإبقاؤها، أو استبدالها بمسافة لتحويل كل فاصل سطر والمسافات حوله إلى مسافة واحدة.

بعد القيم تأتي الصفوف والأعمدة: يحذف إزالة الصفوف الفارغة الصفوف التي كل خلاياها فارغة أو لا تحتوي إلا مسافات؛ وتقارن التكرارات القيم بعد تنظيفها؛ ويُنفَّذ إزالة الأعمدة الفارغة تمامًا في الأخير. ويشمل حذف الصفوف والأعمدة كل الأعمدة دائمًا، أيًا كان إعداد التطبيق على الأعمدة.

إزالة الصفوف المكررة

  • الخيار الافتراضي هو إزالة الصفوف المتطابقة في كل الأعمدة. ويجب أن تتطابق القيم تمامًا بعد خطوات الخلايا السابقة.
  • مع إزالة الصفوف ذات القيم نفسها في أعمدة مختارة تُعدّ الصفوف مكررة إذا تطابقت أعمدة المفتاح المختارة، مثل email، أو first_name + last_name + zip. ويمكن أن تختلف الأعمدة الأخرى.
  • يحدد الإبقاء على النسخة التي تبقى: أول ظهور، أو آخر ظهور التي تبقى في موضع ذلك الصف الأخير.
  • يجعل تجاهل حالة الأحرف والمسافات المحيطة عند المقارنة القيمتين ⁦ANA@example.com⁩ و⁦ ana@example.com⁩ مفتاحًا واحدًا. ولا يغيّر هذا الخيار نص الصف الذي يبقى.
  • لإيقاف إزالة التكرار اختر إبقاء كل الصفوف.

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

ما لا يتغير أبدًا

  • يبقى صف العناوين كما هو، ولا يتغير ترتيب الأعمدة إلا عند حذف الأعمدة الفارغة. وإذا كانت كل الأعمدة فارغة فلا يُحذف أي منها.
  • لا تُحوَّل القيم: تبقى ⁦00731⁩ و⁦1e5⁩ و⁦03/04/2024⁩ نصًا كما كُتبت تمامًا، باستثناء الخطوات التي فعّلتها.
  • المحدِّدات وفواصل الأسطر داخل القيم بين علامات اقتباس تُقرأ وفق RFC 4180 وتُكتب من جديد بين علامات اقتباس، ما لم تُستبدل فواصل الأسطر.
  • يُكتب العنوان الفارغ بصيغة ⁦Column 3⁩، والعنوان المكرر بصيغة ⁦name (2)⁩. والصفوف الأقصر من صف العناوين تُكمَّل بقيم فارغة.
  • يحتفظ الملف المنزَّل بمحدِّد الملف ونهايات أسطره وفاصل السطر الأخير، وبترميزه إذا كان ⁦UTF-8⁩ (مع علامة ترتيب البايت أو دونها) أو ⁦UTF-16 LE⁩ أو ⁦Windows-1252⁩؛ أما الترميزات الأخرى فتُحفظ بـ⁦UTF-8⁩.

حل المشكلات

  • اختفت صفوف أردت الإبقاء عليها. إزالة التكرار مفعّلة افتراضيًا. اختر إبقاء كل الصفوف تحت التكرارات، أو أوقف إزالة الصفوف الفارغة.
  • بقيت تكرارات تبدو متطابقة. تختلف في حالة الأحرف، أو المسافات داخل القيمة، أو علامات مكتوبة بطريقتين، أو أحرف غير مرئية. فعّل تجاهل حالة الأحرف والمسافات المحيطة عند المقارنة أو دمج المسافات المتكررة داخل القيم أو توحيد ترميز Unicode ‏(NFC) أو إزالة الأحرف غير المرئية.
  • أفسد «أول حرف كبير» الأسماء أو الرموز. اقصره بخيار التطبيق على الأعمدة، على عمود الاسم وحده مثلًا، فتحتفظ عناوين البريد ورموز المنتجات بحالة أحرفها.
  • لم تُفرَّغ القيمة n/a المكتوبة بأحرف صغيرة. القائمة حساسة لحالة الأحرف؛ أضِف ⁦n/a⁩ بجانب ⁦N/A⁩.

الحدود والخصوصية

الملفات حتى 25 ميغابايت و100 ألف صف و250 عمودًا ومليوني خلية. وللملف الأكبر، قسّمه أولًا بأداة تقسيم CSV؛ مع ملاحظة أن التكرارات لن تُكتشف حينها إلا داخل كل جزء.

يجري التنظيف في متصفحك، ولا يُرفع ملف CSV إلى أي خادم.

مثال

قائمة جهات اتصال نُظّفت بالخطوتين الافتراضيتين (إزالة المسافات وحذف الصفوف الفارغة)، مع دمج المسافات المتكررة داخل القيم، واعتبار هذه القيم فارغة مضبوطًا على ⁦N/A, NULL⁩، وإزالة التكرار حسب العمود email مع تجاهل حالة الأحرف والمسافات المحيطة عند المقارنة. تذكر الملاحظة 5 قيم معدّلة، وحذف صف فارغ واحد وصف مكرر واحد. يُحذف صف Ana الثاني لأنه مكرر، ويحتفظ الأول بتهجئته.

CSV
name,email,city
"  ana lopez ",ANA@example.com,Madrid
Ana Lopez,ana@example.com ,Madrid
Kim   Lee,kim@example.com,N/A
,,
Bao Nguyen,bao@example.com,NULL
CSV بعد التنظيف
name,email,city
ana lopez,ANA@example.com,Madrid
Kim Lee,kim@example.com,
Bao Nguyen,bao@example.com,

أسئلة وأجوبة

كيف أزيل التكرارات بناءً على عمود واحد؟

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

هل يمكن البحث عن نص واستبداله هنا؟

لا. تطبّق هذه الأداة خطوات تنظيف ثابتة. وللبحث والاستبدال في خلايا مختارة استخدم محرر CSV.

هل يغيّر التنظيف الأرقام أو التواريخ؟

لا. تُعامَل القيم كنص: لا تعيد الأداة تنسيق الأرقام أو التواريخ ولا تمس الأصفار في بداية القيم. ولا يغيّر القيمة إلا الخطوات التي تفعّلها.

المعايير والمراجع