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