Command Palette

Search for a command to run...

كيفية فرز أسطر النص: شرح الترتيب الأبجدي والطبيعي والرقمي

كيفية فرز أسطر النص: شرح الترتيب الأبجدي والطبيعي والرقمي

T
Toolz Team
|Sep 19, 2026|13 دقيقة قراءة
تفضل Toolz.dev على Google

جزء من مجموعة أدوات النصوص

فارز الأسطر

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

استخدم فارز الأسطر

يبدو فرز القائمة هو المشكلة الأكثر حلاً في الحوسبة، حتى تعود النتيجة file10 فوق file2، كل اسم كبير متجمع في الأعلى، $5 تقطعت بهم السبل في أسفل قائمة الأسعار، و&quot؛ أبل وquot؛ و&quot؛apple&quot؛ تحسب كمدخلين مختلفين. كل واحد من هؤلاء هو النوع الذي يفعل بالضبط ما قيل له. المشكلة هي أن &quot؛ الترتيب الأبجدي والاقتباس؛ يخفي عدة قواعد مختلفة، واختيار القواعد الخاطئة ينتج قائمة مرتبة تقنيًا وعديمة الفائدة عمليًا.

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

ليرة تركية؛DR: لفرز أسطر النص، الصق عنصرًا واحدًا في كل سطر واختر الوضع. الأبجدية في Toolz Line Sorter هي لغة واعية وطبيعية، لذا item2 يأتي قبل item10، وتجاهل الحالة (افتراضيًا) يحتفظ بـ &quot؛ أبل وquot؛ و&quot؛ apple&quot؛ معاً. أوامر الوضع الرقمي حسب الرقم الموجود في بداية كل سطر وتغرق الأسطر غير الرقمية إلى الأسفل. أوامر وضع الطول حسب عدد الأحرف. يتم التنظيف قبل الفرز: قم بقص المسافة البيضاء، وإسقاط الخطوط الفارغة، ثم إزالة التكرارات مع الاحتفاظ بالظهور الأول. ال فارز الخط عبر الإنترنت من جانب العميل، مجاني، بدون تسجيل، وتحديثات أثناء الكتابة.

ماذا يفعل فارز الخط؟

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

يوفر إصدار Toolz خمسة أوضاع وأربعة خيارات للتنظيف

تعيين ماذا يفعل الافتراضي
أ إلى ز ترتيب أبجدي مدرك للغة مع التعامل مع الأرقام الطبيعية المحدد
رقمي الطلبات حسب الرقم الذي يبدأ به كل سطر
طول الطلبات حسب عدد الأحرف، الأقصر أولاً
عكس يقلب ترتيب السطر الحالي دون فرز
خلط ورق اللعب ترتيب عشوائي؛ انقر مرة أخرى للتعديل
تنازلي يقلب نتيجة A إلى Z، رقمية أو طولية عن
إزالة الخطوط الفارغة إسقاط الخطوط الفارغة أو المسافات البيضاء فقط على
إزالة التكرارات يحتفظ بالظهور الأول لكل سطر عن
تقليم المسافات البيضاء إزالة المسافات وعلامات التبويب الموجودة على طرفي كل سطر عن
تجاهل الحالة يقارن الأسطر كأحرف صغيرة للفرز والتكرارات على

توضح لوحة الإخراج عدد الخطوط التي تم إخراجها وعدد الخطوط التي تمت إزالتها، حتى تتمكن من رؤية تأثير خيارات التنظيف في لمحة.

لماذا يأتي file10 قبل file2؟

لأن فرز النص العادي يقارن السلاسل حرفًا واحدًا في كل مرة، من اليسار. file10 و file2 تطابق لأربعة أحرف، ثم الحرف الخامس هو 1 في واحد و 2 في الآخر. الشخصية 1 أنواع قبل 2لذا file10 يفوز، والمقارنة لا تنظر أبدًا إلى حقيقة أن 10 هو رقم أكبر من 2.

يعمل الفرز الطبيعي على إصلاح ذلك من خلال قراءة كل مجموعة من الأرقام كرقم. يقوم وضع فرز خطوط Toolz &#39؛s من A إلى Z بذلك، باستخدام المتصفح &#39؛s المدمج مع تشغيل المقارنة الرقمية، وهو الخيار الموضح لـ String.prototype.localeCompare على MDN. قواعد الترتيب أدناه تأتي من خوارزمية ترتيب Unicode، وهي الطريقة التي تقرر بها المتصفحات ذلك &quot؛é&quot؛ فرز قريب &quot؛e&quot؛ وليس بعد &quot؛z&quot؛.

فيما يلي نفس القائمة المكونة من خمسة عناصر ضمن ثلاث قواعد

الإدخال ترتيب البايت (LC_ALL=C sort) ترتيب الأحرف، حالة مطوية النظام الطبيعي (الأدوات من الألف إلى الياء)
item10 Item1 Item1 Item1
item2 item10 item10 item2
Item1 item2 item2 item3
item3 item3 item3 item10
zebra zebra zebra zebra

يضع ترتيب البايت Item1 أولاً فقط بسبب الأحرف الكبيرة I يحتوي على رمز أقل من أي حرف صغير. يعمل ترتيب الأحرف مع طي العلبة على إصلاح الحرف الكبير، ولكنه لا يزال يضعه item10 قبل item2. النظام الطبيعي يصبح على حق.

كيف تؤثر الحالة على الفرز الأبجدي؟

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

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

مثال عملي مع العينة المضمنة

انقر &quot؛ تحميل العينة والاقتباس؛ والإدخال عشرة أسطر: banana، Apple، cherry، apple، 10، 2، Banana، date، سطر فارغ، و grape.

إعدادات إخراج العد الموضح
الإعدادات الافتراضية: من الألف إلى الياء، تجاهل حالة التشغيل، قم بإزالة الأسطر الفارغة 2, 10, Apple, apple, banana, Banana, cherry, date, grape 9 أسطر، 1 تمت إزالته
إضافة إزالة التكرارات 2, 10, Apple, banana, cherry, date, grape 7 أسطر، 3 تمت إزالتها
إزالة التكرارات، وتجاهل حالة إيقاف التشغيل 2, 10, apple, Apple, banana, Banana, cherry, date, grape 9 أسطر، 1 تمت إزالته
الافتراضي بالإضافة إلى تنازلي grape, date, cherry, Banana, banana, apple, Apple, 10, 2 9 أسطر، 1 تمت إزالته

تظهر ثلاث تفاصيل في هذا الجدول. الأرقام تأتي قبل الحروف في الوضع الأبجدي، و 2 يسبق 10 بسبب الترتيب الطبيعي. مع تجاهل الحالة، Apple يبقى في المقدمة apple لأنه ظهر أولاً في الإدخال. مع إيقاف تشغيل حالة التجاهل، يضع ترتيب المتصفح &#39؛s النموذج الصغير قبل النموذج الكبير مباشرة، وهو السلوك المعتاد في متصفحات اللغة الإنجليزية، ولا يتم احتساب أي من الأسطر كنسخ مكررة لأنها ليست متطابقة. النزول هو عكس كامل للنتيجة التصاعدية، لذا فإن الخطوط المربوطة تنقلب أيضًا.

الفرز الأبجدي مقابل الفرز الرقمي: متى يجب عليك استخدام كل منهما؟

استخدم الوضع الأبجدي (الطبيعي) للنص الذي يحتوي على أرقام، مثل أسماء الملفات أو تسميات الإصدارات أو عناوين الشوارع. استخدم الوضع الرقمي عندما يكون كل سطر رقمًا، أو يبدأ برقم واحد، وتريد الأسطر مرتبة حسب القيمة.

يقرأ الوضع الرقمي الرقم الموجود في بداية كل سطر بالطريقة التي يقرأ بها JavaScript&#39؛s parseFloat يفعل. يتخطى المسافات البادئة، ويقرأ علامة اختيارية وأرقام ونقطة عشرية وأس، ويتوقف عند الحرف الأول الذي لا يمكنه متابعة رقم. تنتقل الأسطر التي لا تبدأ برقم إلى الأسفل وتحتفظ بترتيبها الأصلي.

خط القيمة المستخدمة ملحوظة
42 42
-7.5 -7.5 تعمل القيم السالبة والعشرية
1e3 1000 تتم قراءة التدوين العلمي
12 apples 12 النص بعد تجاهل الرقم
1,000 1 تتوقف القراءة عند الفاصلة
$5 ليس رقما يغوص إلى القاع
v2 ليس رقما يغوص إلى القاع

فرز $5، 42، 1,000، -7.5، 12 apples، 1e3 في الوضع الرقمي يعطي:

-7.5
1,000
12 apples
42
1e3
$5

يوجد فخان في هذا الإخراج. 1,000 تم فرزها على أنها 1، لأن آلاف الفواصل تنهي الرقم. قم بتجريدها أولاً باستخدام البحث والاستبدال إذا كانت بياناتك تستخدمها. و $5 انخفض إلى القاع؛ إزالة رموز العملة قبل فرز الأسعار.

يؤدي النزول في الوضع الرقمي إلى عكس النتيجة بأكملها، مما يعني أن الخطوط غير الرقمية تنتقل من الأسفل إلى الأعلى. إذا كنت تريد الأرقام بترتيب تنازلي فقط، فقم بتنظيف الأسطر غير الرقمية أولاً.

كيف يعمل الفرز حسب الطول؟

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

العدد هو طول سلسلة JavaScript، الذي يحسب وحدات كود UTF-16. بالنسبة للأحرف العادية والأرقام والأحرف اللاتينية المميزة التي تساوي عدد الأحرف المرئية café هو 4. تستخدم معظم الرموز التعبيرية وبعض الأحرف النادرة وحدتين رمزيتين، لذلك ok👍 يتم احتسابه على أنه 4، وليس 3. بالنسبة لقوائم الكلمات أو الأسماء أو عناوين URL، نادرًا ما يكون هذا مهمًا.

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

بأي ترتيب يتم التنظيف والفرز؟

يتم تشغيل الخطوات دائمًا بتسلسل ثابت، ويشرح الترتيب النتائج الأكثر إثارة للدهشة

  1. انقسام الإدخال في الأسطر، مع قبول نهايات أسطر Unix وWindows.
  2. تقليم كل سطر، إذا كانت المسافة البيضاء قيد التشغيل.
  3. إزالة الخطوط الفارغة، إذا كان على. يعتبر السطر الذي يحتوي على مسافات فقط فارغًا، حتى مع إيقاف التشغيل.
  4. إزالة التكرارات، إذا كان على. يتم الاحتفاظ بالحدث الأول. مع تجاهل الحالة، يتم احتساب الخطوط التي تختلف فقط حسب الحالة كنسخ مكررة، ويبقى غلاف الحالة الأولى على قيد الحياة.
  5. فرز أو عكس أو خلط ورق اللعب ما تبقى.

لأن التشذيب اختياري ويتم إيقاف تشغيله افتراضيًا، apple و apple (مع مساحة زائدة) عبارة عن سطرين مختلفين عند مقارنة التكرارات، إلا إذا قمت بتشغيل Trim. هذا هو السبب الأكثر شيوعًا لـ &quot؛ إزالة التكرارات والاقتباس؛ يبدو أن التمرير يفتقد الإدخالات. علامات التبويب الملصقة من جدول البيانات تسبب نفس التأثير.

بالنسبة للعمل المكرر الأثقل، مثل الاحتفاظ بالحدث الأخير أو مقارنة جزء فقط من كل سطر، فإن دليل مزيل الخط المكرر يغطي الخيارات بمزيد من التعمق.

العكس مقابل التنازلي: ما الفرق؟

عكس الترتيب الحالي للخطوط دون فرز أي شيء. c, a, b يصبح b, a, c. الفرز التنازلي أولاً ثم يقلب، لذا c, a, b في A إلى Z مع يصبح النزول c, b, a.

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

هل الخلط عشوائي بما فيه الكفاية؟

يستخدم الخلط خوارزمية فيشر ييتس، التي تمنح كل ترتيب ممكن فرصة متساوية عندما تكون أرقامه العشوائية موحدة، ويستمد هذه الأرقام من المتصفح &#39؛s Math.random(). هذا أمر جيد لتوزيع قائمة القراءة أو قائمة التشغيل أو ترتيب العرض بشكل عشوائي. إنه ليس مصدرًا عشوائيًا للتشفير، لذا فهو اختيار خاطئ لأي شيء قد يكون لدى شخص ما سبب للتنبؤ بالنتيجة أو الاعتراض عليها، مثل سحب الجائزة. لهؤلاء، مخصص قائمة العشوائية هو الأنسب. انقر فوق خلط ورق اللعب مرة أخرى للحصول على طلب جديد.

هل من الآمن فرز القوائم الحساسة عبر الإنترنت؟

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

الحد العملي للحجم هو متصفحك وذاكرة #39؛ بدلاً من الحد الأقصى للخادم. يتم فرز عشرات الآلاف من الأسطر على الفور على جهاز كمبيوتر محمول نموذجي. يتم التعامل مع الملفات الكبيرة جدًا، بمئات الميجابايت، بشكل أفضل في سطر الأوامر.

ما هي أخطاء فرز الخطوط الشائعة؟

أعراض سبب يثبت
file10 فوق file2 في أداة أخرى مقارنة الأحرف البسيطة استخدم الفرز الطبيعي (من الألف إلى الياء هنا) أو sort -V
الإدخالات المكتوبة بالأحرف الكبيرة كلها في الأعلى فرز ترتيب البايت استخدم نوعًا مدركًا للغة أو تجاهل الحالة
لم تتم إزالة التكرارات تختلف المسافات أو علامات التبويب الزائدة قم بتشغيل المسافة البيضاء المزخرفة
&quot؛ Apple&quot؛ و&quot؛ تفاحة واقتباس؛ كلاهما محفوظ تجاهل الحالة معطلة تشغيل تجاهل الحالة
1,000 مرتبة كـ 1 فاصل الآلاف ينهي الرقم إزالة الفواصل قبل الفرز الرقمي
الأسعار مع $ في الأسفل الخط لا يبدأ برقم تجريد رموز العملة أولا
تبدأ القائمة الرقمية التنازلية بالكلمات يتم عكس الخطوط غير الرقمية إلى الأعلى قم بإزالة الأسطر غير الرقمية أولاً
يحتوي الإخراج على واحد آخر &quot؛ تمت إزالته وحاصل عليه؛ مما كان متوقعا أنشأ سطر جديد زائد سطرًا أخيرًا فارغًا متوقع؛ تم إسقاط الخط الفارغ

بدائل فارز الخط عبر الإنترنت

أداة كيفية الفرز ملاحظات
جنو sort sort -f (حالة أضعاف)، sort -n (رقمي)، sort -V (طبيعي)، sort -u (فريد)، sort -r (عكس) قابل للبرمجة، ويتعامل مع الملفات الضخمة؛ انظر دليل فرز جنو
shuf shuf list.txt ترتيب عشوائي على سطر الأوامر
فرز حسب الطول في قذيفة awk '{ print length, $0 }' list.txt | sort -n | cut -d' ' -f2- يحسب البايتات أو الأحرف حسب اللغة
جدول البيانات لصق في عمود، البيانات، الفرز جيد عندما تحتوي الخطوط على حقول متعددة
محرري الكود &quot؛ فرز الخطوط والاقتباس؛ الأوامر في العديد من المحررين يختلف السلوك حسب المحرر
فارز خط تولز لصق، انقر فوق الوضع معاينة مباشرة، التنظيف في تمريرة واحدة، من جانب العميل

لاحظ أن sort يعتمد الإخراج على LC_ALL أو LANG الإعداد المحلي، ولهذا السبب يمكن لنفس الأمر إعطاء أوامر مختلفة على جهازين. إعدادات LC_ALL=C قوات ترتيب البايت.

فرز القائمة خطوة بخطوة

  1. افتح ال فارز سطر النص وألصق قائمتك، عنصرًا واحدًا في كل سطر.
  2. اختر من الألف إلى الياء للكلمات وأسماء الملفات، أو الرقم للأرقام، أو طول عدد الأحرف.
  3. قم بتشغيل المسافة البيضاء المزخرفة إذا تم لصق القائمة من مستند أو جدول بيانات.
  4. قم بتشغيل إزالة التكرارات إذا كنت تريد كل إدخال مرة واحدة؛ اترك حالة تجاهل لدمج الأحرف الكبيرة المختلفة.
  5. تحقق من عدد المخرجات و&quot؛ تمت إزالته واقتباسه؛ رقم.
  6. انقر فوق نسخ.

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

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!