حشو النص
مدّ النص إلى عرض ثابت بمحرف حشو على اليسار أو اليمين أو الجانبين: يصبح 42 عند حشوه بالأصفار من اليسار حتى 6 خانات هو 000042. مثالي لأرقام الفواتير والمعرّفات والأعمدة المتحاذية. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- النص
- 42
- العرض
- 6
- أي جانب
- Left
- الحرف
- 0
- النتيجة
- 000042
- الطول الأصلي
- 2
- الطول
- 6
- عدد الحشو
- 4
حشو سلسلة يعني تمديدها إلى عرض أحرف ثابت بإدراج حرف حشو مختار على اليسار أو اليمين أو كلا الجانبين معًا. تأخذ هذه الأداة النص الذي تدخله وعرض هدفًا صحيحًا غير سالب ومحدّد جانب (left أو right أو both للحشو المركزي) وحرف حشو اختياريًا واحدًا يكون افتراضيًا مسافة، ثم تعيد النتيجة المحشوة مع عدّات الحشو والأطوال. تشمل المهام الكلاسيكية حشو أصفار لأرقام الفواتير والمعرّفات، ومحاذاة التسميات يمينًا في سجلات أحادية المسافة، وتوسيط العناوين في لافتات عرض ثابت. عندما يكون العرض المطلوب أصغر من طول النص يفشل الطلب بخطأ تحقق واضح بدل القص بصمت، فلا يفقد العملاء بيانات بالخطأ.
كيف يعمل حشو السلاسل
يقيس المحرك طول نص الإدخال بوحدات سلسلة JavaScript، ثم يحسب كم وحدة حشو ما زالت مطلوبة لبلوغ العرض الهدف. عندما يتوفر عرض إضافي يُكرَّر حرف الحشو—نقطة رمز Unicode واحدة بالضبط، الافتراض مسافة—لبناء المقطع الناقص. الحشو الأيسر يسبق سلسلة الحشو، وهو المسار المعتاد للرموز الرقمية بحشو أصفار مثل تحويل اثنين وأربعين إلى 000042 عند عرض ستة.
الحشو الأيمن يلحق سلسلة الحشو، مفيد للحقول المحشوة بمسافات في ملفات تصدير عرض ثابت وخلايا جداول أحادية المسافة. الحشو على الجانبين (الوسط) يقسم الميزانية بأرضية الحاجة على اثنين يسارًا والباقي يمينًا، فيبقى باقي فردي على اليمين وينتج تخطيطًا مركزيًا مستقرًا وحتميًا. النص الفارغ مسموح لتوليد سلاسل حشو خالصة بعرض معيّن.
أين يظهر حشو النص في العمل الحقيقي
تحشو فرق المالية والعمليات أرقام الفواتير وSKU المخزن ومعرّفات التذاكر بأصفار حتى يطابق الترتيب المعجمي الترتيب العددي في جداول البيانات وصادرات CSV. يبني مهندسو الخلفية تخطيطات ملفات قديمة بعرض ثابت حيث يجب أن يشغل كل حقل عدد أعمدة معلن بحشو مسافة أو صفر على جانب مختار. تحشو مسارات البيانات والتحليلات التسميات يمينًا قبل جداول وحدة تحكم أحادية المسافة والأعداد الصحيحة يسارًا قبل ربط مفاتيح تفترض طول سلسلة متساوٍ.
توسيط فرق المنتج والنمو عناوين قصيرة داخل لافتات عرض ثابت وإيصالات وأسطر طابعة حرارية حيث المحاذاة بصرية لا دلالية. فضّل هذه الصفحة عندما تكون نية البحث حرفيًا حشو نص أو left pad أو right pad أو center pad أو حشو أصفار لسلسلة؛ إن احتجت base64 أو تجزئة أو تحويل حالة فاستخدم الأدوات المخصصة بدل مدّ هذه القدرة خارج عقدها.
حالات الاستخدام
حشو أصفار للمعرّفات وأرقام الفواتير
احشُ يسارًا رموزًا رقمية بأصفار إلى عرض ثابت حتى يطابق الترتيب المعجمي الترتيب العددي في CSV والتقارير.
حقول ملفات العرض الثابت
احشُ بمسافات يسارًا أو يمينًا إلى عروض أعمدة دقيقة تطلبها تخطيطات تصدير واستيراد قديمة بعرض ثابت.
توسيط عناوين في لافتات أحادية المسافة
احشُ الجانبين بحرف حشو لتوسيط تسميات قصيرة داخل سجلات وإيصالات وترويسات CLI بعرض ثابت.
الأسئلة الشائعة
هل يمكن الحشو على الجانبين (الوسط)؟
نعم. اضبط side على both (أو center). تُقسَّم ميزانية الحشو بـ floor(need/2) يسارًا والباقي يمينًا.
ما أحرف الحشو المسموحة؟
حرف واحد بالضبط لكل طلب. الافتراض مسافة. الشائع 0 لحشو الأصفار و* أو - للافتات البصرية.
هل يُسمح بالنص الفارغ؟
نعم. نص فارغ بعرض موجب يعيد سلسلة حشو خالصة بذلك العرض، مفيدة لتوليد خطوط فاصلة.
ماذا يحدث إذا كان العرض أصغر من النص؟
تتوقف الأداة بدل قص النص، فلا تفقد أي بيانات عن طريق الخطأ. وإذا كان العرض مساويًا لطول النص، يعود إليك النص كما هو دون أي حشو.
لماذا تُحشى أرقام الفواتير بالأصفار؟
حتى يطابق الترتيب الأبجدي في جداول البيانات والملفات المصدَّرة الترتيبَ العددي. فعندما تتساوى الأرقام في عدد الخانات يبقى تسلسلها صحيحًا.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/str/pad \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"42","width":6,"side":"left"}'const res = await fetch("https://api.kit.forhosting.com/str/pad", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "42",
"width": 6,
"side": "left"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/pad",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "42",
"width": 6,
"side": "left"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/pad", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"42","width":6,"side":"left"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"42","width":6,"side":"left"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/pad", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"text": "42",
"width": 6,
"side": "left"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.pad",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
بلا رحلات شبكة داخل المحرك، وبلا بذور عشوائية، وبلا اعتماد على الساعة—نص وعرض وجانب وحرف متطابقة تنتج دائمًا JSON متطابقًا.
كيف يعمل حشو السلاسل
إن كان العرض أصغر بصرامة من ذلك الطول تفشل التحقق بـ invalid_input ولا تُعاد نتيجة، لأن القص الصامت سيدمر بيانات المستخدم. عندما يساوي العرض الطول تُعاد السلسلة الأصلية دون تغيير مع pad_count صفرًا. الحمولات الطويلة جدًا فوق سقف الأحرف الموثّق، أو عرض فوق الحد الأقصى الموثّق، تفشل أيضًا بـ invalid_input حتى لا يحتكر طلب واحد ذاكرة Worker. الخوارزمية تسلسل ثابت من عمليات سلسلة نقية بلا علم لغة وبلا شبكة وبلا عشوائية، فنفس الإدخال ينتج دائمًا نفس JSON النتيجة في ودجت المتصفح وعلى Worker.
ما ترسله وما تسترجعه
تُجبر الأرقام والقيم المنطقية لـ text إلى سلاسل عشرية أو true/false؛ تُرفض الكائنات والمصفوفات وNaN وInfinity. اربط نموذج المتصفح المجاني لعمل لصق ونسخ سريع، ثم استدعِ العقد نفسه من السكربتات عند توحيد سجلات عرض ثابت أو محاذاة أعمدة سجل أو سكّ معرّفات بحشو أصفار بالجملة. إن احتاج مسارك لاحقًا قصًا أو لفًا أو أنماط حشو متعددة الأحرف، عاملها كأدوات منفصلة بدل إثقال صفحة حشو النص هذه. أرسل الحقول المطلوبة text وwidth وside. text هي السلسلة المراد حشوها؛ تُقبل أسماء بديلة مثل input وvalue وdata وs وmessage وstring وcontent وbody للعملاء الأقدم. width طول هدف صحيح غير سالب؛ تعمل الأسماء target وlength وsize وn عند حذف width. يجب أن يتوحّد side إلى left أو right أو both—start وl إلى left وend وr إلى right وcenter وcentre وc وmiddle إلى both. char الاختياري (أسماء pad_char وfill وpad) حرف واحد؛ احذفه للحشو بمسافات. عند النجاح تعيد الاستجابة text وwidth وside وchar زائد result وoriginal_length وlength للسلسلة المحشوة وpad_count وpad_left وpad_right وoperation مضبوطًا على pad. تشمل الفحوصات الكلاسيكية text اثنين وأربعين وwidth ستة وside left وchar صفر تصبح 000042؛ hello بعرض عشرة وside right ومسافة تصبح hello زائد خمس مسافات؛ وحشو مركزي لـ ab بعرض خمسة بأحرف نجمة ينتج نجمة ab نجمة نجمة. تسعير استدعاءات API الناجحة هو الأساس المنشور $0.002 لكل عنصر؛ إخفاقات التحقق بما فيها width دون طول النص لا تستهلك الرصيد المدفوع مسبقًا.
أين يظهر حشو النص في العمل الحقيقي
يحتاج المطوّرون الذين يكتبون مولّدات شيفرة ومنسّقات وتجهيزات اختبار إلى وحي حتمي يعيد نفس شكل JSON في ودجت المتصفح وفي API حتى لا تنجرف goldens. لأن هذه القدرة محرك parse خالص، تسعير API هو الأساس المنشور $0.002 لكل عنصر ناجح والتحقق الفاشل لا يستهلك الرصيد.
أسئلة تقنية
ماذا يحدث إن كان العرض أصغر من النص؟
يفشل الطلب بـ invalid_input. هذه الأداة لا تقص أبدًا؛ يجب أن يكون العرض الهدف أكبر من أو يساوي طول النص.
كم التكلفة؟
أداة المتصفح مجانية وتعمل محليًا. تستخدم طلبات API رصيد KIT المدفوع مسبقًا بمبلغ $0.002 لكل عنصر ناجح؛ الإدخال غير الصالح لا يُحاسب.