ForHosting KIT · النصوص والذكاء الاصطناعي

أسطر فريدة مع حفظ الترتيب

الصق alpha وbeta وalpha وgamma وbeta سطرًا سطرًا لتحصل على alpha وbeta وgamma: يبقى كل سطر حيث ظهر أول مرة، وتُحذف النسختان اللاحقتان. ولا يُفرز أي شيء. مجاني في متصفحك.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا
إذا أدخلت
النص
alpha beta alpha gamma beta
تحصل على
النص
alpha beta gamma
الأسطر
alpha, beta, gamma
الكمية
3
الأصلي
alpha beta alpha gamma beta

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

كيف تُبقي الأسطر الفريدة ترتيب أول ظهور بدل الفرز

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

يسير هذا المحرك في الملف من أول سطر إلى آخره، ويحفظ كل سطر أول مرة يظهر فيها، ويطرح النسخ المطابقة اللاحقة، ويترك الناجين في تسلسل أول الرؤية ذلك. يقسم على CR وLF وCRLF حتى تُقارن مقالب Windows وUnix وMac القديم بعدل. كل سطر مرشح كما كُتب، بما في ذلك أول سطر فارغ إن وُجد.

تستخدم العضوية مفتاح سلسلة مطابقًا افتراضيًا، فتهم المسافات اللاحقة وحالة الأحرف. عندما تكون trim بقيمة true يكون مفتاح العضوية السطر بعد نزع الفراغ من طرفيه، لكن النص المُبقى يظل أول إملاء أصلي كتبتموه. لا توجد مقابلة محلية ولا مسافة تحرير ضبابية ولا إعادة كتابة لآخر ظهور.

استخدموا هذه الصفحة عندما يكون الترتيب جزءًا من المعنى. استخدموا أداة فرز الأسطر إن أردتم أ–ي. استخدموا إزالة تكرار تطوي حالة الأحرف عندما ينبغي أن يندمج Apple وapple.

هذه الصفحة للوائح الفريدة بأول رؤية التي لا يجوز إعادة ترتيبها.

أين تستحق قائمة فريدة بأول رؤية موضعها

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

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

إبقاء القوائم المرتّبة فريدة دون إعادة فرزها

الصقوا ترتيب ترويج أو قائمة تشغيل أو طابور أولوية واطرحوا النسخ اللاحقة بينما يبقى ترتيب أول الرؤية حيث وضعتموه تمامًا.

تنظيف السجلات والتواريخ بترتيب أول ظهور

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

كيف تعمل الأسطر الفريدة التي تحفظ الترتيب؟

يقسم المحرك نصكم على CR أو LF أو CRLF، ويُبقي أول ظهور لكل سطر، ويطرح النسخ اللاحقة. يبقى الناجون بترتيب أول الرؤية. لا يُفرز شيء.

ما الفرق عن فرز الأسطر الفريدة؟

الفرز ثم التفريد يعيد كتابة الرتبة إلى ترتيب أ–ي. هذه الأداة لا تفرز أبدًا: أول مرة يظهر فيها السطر هو الموضع الذي يحتفظ به. استخدموا أداة فرز أسطر إن أردتم خرجًا أبجديًا.

ماذا تغيّر خيار trim؟

عندما تكون trim بقيمة true تُعدّ الأسطر التي لا تختلف إلا بفراغ بادئ أو لاحق السطر ذاته. النص المُبقى يظل أول إملاء أصلي كتبتموه، بما في ذلك تلك الفراغات.

ماذا يحدث إن غاب text أو كان فارغًا؟

تُعامل الخانة الفارغة خطأ عميل لا قائمة فريدة فارغة ناجحة.

هل يُعدّ Apple وapple السطر نفسه؟

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

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

POSThttps://api.kit.forhosting.com/str/unique-lines-ordered

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/str/unique-lines-ordered \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"alpha\nbeta\nalpha\ngamma\nbeta"}'
{
  "text": "alpha\nbeta\nalpha\ngamma\nbeta"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "str.unique_lines_ordered",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

max_chars65536
HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

يُرفض الإدخال الفارغ بـ invalid_input بدل سلسلة فارغة صامتة، فيُحمى العملاء الذين نسوا ربط حقل. تكلف استدعاءات API الناجحة $0.002 لكل عنصر.

كيف تُبقي الأسطر الفريدة ترتيب أول ظهور بدل الفرز

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

ما ترسلونه وما تستلمونه وكيف تتصرف الأخطاء

أرسلوا حقلًا إلزاميًا اسمه text يحوي السلسلة المتعددة الأسطر غير الفارغة التي تريدون تفريدها. يمكن إرسال trim اختياريًا كقيمة منطقية أو بصيغ السلسلة الشائعة true وfalse وyes وno وone أو zero. عند إغفال trim تكون false: المقارنة مطابقة بما فيها الفراغ المحيط. تُقبل الأسماء البديلة input وvalue وs وcontent وbody وlines عندما تستخدمها عملاء قديمة أو مولّدات نماذج. غياب text أو قيمة ليست سلسلة أو سلسلة طولها صفر يثير invalid_input برسالة تسمي الحقل، ولا تُحاسب تلك الإخفاقات. عند النجاح تُعيد الاستجابة text أسطرًا فريدة موصولة بسطر جديد، وlines القائمة الفريدة ذاتها في مصفوفة، وcount عدد الأسطر الفريدة المتبقية، وoriginal صدى الإدخال، وoriginal_count عدد الأسطر المقسومة قبل التفريد، وremoved عدد النسخ اللاحقة المطروحة، وfirst_positions فهارس المصدر من الواحد لكل سطر مُبقى، وعلَم trim المحلول، وmethod بقيمة unique_lines_ordered. تشمل الفحوص الكلاسيكية قائمة فواكه مرتّبة يتكرر فيها banana وapple فتنهار إلى ثلاثة أسطر فريدة تشير first_positions فيها إلى الصفوف الأصلية، وقائمة محشوة بفراغ تنهار أكثر عندما تكون trim بقيمة true، وسطرًا فريدًا واحدًا يمر بلا تغيير وremoved يساوي صفرًا. الحمولات الطويلة جدًا فوق سقف الأحرف الموثق تفشل بـ invalid_input حتى لا تحتكر طلبية واحدة الذاكرة. تسعير استدعاءات API الناجحة هو الأساس المنشور $0.002 لكل عنصر.

أين تستحق قائمة فريدة بأول رؤية موضعها

ولأن هذه القدرة محرك parse خالص فإن تسعير API هو الأساس المنشور $0.002 لكل عنصر ناجح، والتحقق الفاشل لا يستهلك الرصيد. الشكل JSON ذاته يغذّي ودجت المتصفح المولَّد تلقائيًا، فتتوافق عروض الصف والأنابيب الآلية على كل اسم حقل وعدّ. أبقوا الحمولات بأحجام مستندات عادية تلائم عزل Worker، لا مقالب مستودع بعدة ميغابايت.

بناء fixtures مستقرة من صادرات مشوشة

حوّلوا مقلب نص صريح لعناوين URL أو رموز SKU أو بريد إلى قائمة أسطر فريدة لـ CI، مع first_positions يربط كل ناجٍ بصفه المصدر.

كم تكلفة الأسطر الفريدة التي تحفظ الترتيب؟

أداة المتصفح مجانية. تستخدم طلبات API رصيد KIT المدفوع مسبقًا بمقدار $0.002 لكل استدعاء ناجح؛ ولا يُحاسب الإدخال غير الصالح.

اطّلع على توثيق KIT الكامل ←