توحيد علامة الحذف والنقاط الثلاث
كثيرًا ما تختلط صيغ علامة الحذف عندما ينتقل النص بين المحررات وأنظمة المحتوى والمستندات المنسوخة وأدوات النشر.
شغّل الأداة مجانًا
توحّد هذه الإمكانية علامات الحذف من دون تعديل أي ترقيم آخر. يمكنكم اختيار تحويل كل تسلسل من ثلاث نقاط متتالية إلى حرف Unicode واحد، أو توسيع كل حرف لعلامة الحذف إلى ثلاث نقاط عادية. التحويل حتمي ويحافظ بدقة على الكلمات والمسافات المحيطة ويعرض عدد الاستبدالات المنفذة، ولذلك يلائم المراجعة المنفردة ومسارات معالجة النصوص القابلة للتكرار على حد سواء.
اختاروا صيغة علامة الحذف التي تتطلبها الوجهة
يمكن تمثيل علامة الحذف بطريقتين شائعتين: ثلاثة محارف للنقطة، <code>...</code>، أو محرف Unicode واحد، <code>…</code>. قد تبدوان متشابهتين في الفقرة، لكنهما ليستا البيانات نفسها. وقد تتعامل معهما أدوات البحث وحدود عدد المحارف وقواعد التنضيد وأدوات التحقق اللاحقة بطرق مختلفة. اختاروا <code>periods_to_ellipsis</code> عندما يتطلب منشور أو نظام تصميم أو دليل أسلوب محرف Unicode المدمج. واختاروا <code>ellipsis_to_periods</code> عندما يتطلب تنسيق نص عادي أو نظام قديم أو اصطلاح للشفرة المصدرية أو طقم محارف محدود ترقيم ASCII. الوضع الأول هو الافتراضي. يطبّق الاتجاه المختار على النص المرسل كله، بما في ذلك عدة مواضع في السطر نفسه أو عبر أسطر متعددة. وتبقى الكلمات والمسافات وعلامات الاقتباس وكل علامات الترقيم الأخرى من دون تغيير، ولذلك تظل العملية محددة ومتوقعة وليست مراجعة تحريرية عامة.
اعرفوا بدقة ما الذي سيُستبدل
في وضع <code>periods_to_ellipsis</code>، يتحول كل تسلسل غير متداخل من ثلاث نقاط متتالية يعثر عليه المسح إلى محرف واحد لعلامة الحذف. لذلك تتحول ست نقاط إلى محرفين، بينما تظل نقطة واحدة أو نقطتان كما هما. وفي وضع <code>ellipsis_to_periods</code>، يتحول كل محرف Unicode لعلامة الحذف إلى ثلاث نقاط. لا تستنتج الأداة ما إذا كان الترقيم يدل على تردد أو اقتباس محذوف أو خط منقط أو كتابة عرضية، بل تنفذ تحويل المحارف الذي طلبتموه صراحة. كما أنها لا تضيف مسافات حول العلامة ولا تحذفها، لأن قواعد المسافات تختلف بين الأساليب واللغات، بينما تقتصر هذه الإمكانية على توحيد التمثيل. تتضمن الاستجابة النص المحول والاسم القياسي للوضع وعدد الاستبدالات. الصفر نتيجة صحيحة وتعني أن المصدر لم يحتوِ على الصيغة المستهدفة. ويمكنكم استخدام العدد لاكتشاف السجلات المتغيرة من دون مقارنة المستندات كاملة.
استخدموا التوحيد بأمان في مسارات النشر
لمقطع واحد، الصقوا النص المصدر واختاروا الاتجاه المطلوب وراجعوا النص الناتج قبل وضعه في التخطيط. وفي العمل الآلي، استدعوا العملية نفسها بعد الاستيراد مباشرة أو قبل التصدير، حتى يمر كل مستند بمرحلة توحيد واضحة. يمنع تطبيق أسلوب معلن في مرحلة ثابتة المحررات وأدوات العرض من إعادة خلط الصيغ. التحويل ثابت عند تكراره في الاتجاه نفسه: تشغيل <code>periods_to_ellipsis</code> مرة أخرى على ناتجه لا يحدث تغييرات أخرى، وينطبق الأمر نفسه على <code>ellipsis_to_periods</code>. انتبهوا إلى أن عكس الاتجاه لاحقًا يغير كل علامة مطابقة، لا العلامات التي أنتجها استدعاء سابق فقط، لأن النص العادي لا يحفظ مصدر المحرف. لا تستخدم الخوارزمية شبكة أو نموذجًا أو عشوائية أو ساعة، لذا تنتج المدخلات والأوضاع المتطابقة مخرجات متطابقة دائمًا. يناسب المتصفح التنظيف اليدوي، بينما تبلغ كلفة كل طلب API $0.002 وتلائم مهام النشر والترحيل والتصحيح واستيراد المحتوى على دفعات.
حالات الاستخدام
تطبيق دليل أسلوب للنشر
حوّلوا تسلسلات النقاط الثلاث المختلطة إلى محرف علامة الحذف المخصص قبل التنضيد والمراجعة.
إعداد النص لنظام ASCII فقط
وسّعوا محارف Unicode إلى نقاط عادية قبل إرسال النص إلى نظام قديم أو محدود.
توحيد المحتوى المستورد
طبّقوا قاعدة متوقعة على السجلات الواردة من المحررات والمستندات والخلاصات وأنظمة المحتوى.
الأسئلة الشائعة
ما تكلفة هذه الإمكانية؟
تبلغ كلفة كل طلب API $0.002. ويمكنكم أيضًا تشغيل نسخة المتصفح في هذه الصفحة.
هل تغيّر المسافات حول علامة الحذف؟
لا. تتغير المحارف المحددة فقط، وتبقى المسافات المحيطة محفوظة بدقة.
ماذا يحدث لست نقاط متتالية؟
في وضع التحويل من النقاط إلى العلامة، يحولها المسح غير المتداخل إلى محرفين لعلامة الحذف.
هل تعدّل النقاط المفردة أو الأعداد العشرية؟
تظل نقطة واحدة أو نقطتان بلا تغيير. ولا يستهدف الاتجاه الافتراضي إلا تسلسلًا من ثلاث نقاط.
هل من الآمن تشغيل التحويل نفسه مرتين؟
نعم. لا يحتوي الناتج الموحّد على نمط المصدر الخاص بذلك الوضع، ولذلك ينفذ التشغيل الثاني صفر استبدالات.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/str/normalize-ellipsis \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Wait... is that all?"}'const res = await fetch("https://api.kit.forhosting.com/str/normalize-ellipsis", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Wait... is that all?"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/normalize-ellipsis",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Wait... is that all?"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/normalize-ellipsis", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Wait... is that all?"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Wait... is that all?"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/normalize-ellipsis", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"text": "Wait... is that all?"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.normalize_ellipsis",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |