حشو سلسلة في الوسط
ضع النص في منتصف حقل بطول ثابت: تصبح hi عند توسيطها في 8 محارف بالنجوم ***hi***، ثلاث نجوم على كل جانب. وإذا لم تكن القسمة متساوية، يذهب المحرف الزائد إلى اليمين. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- النص
- hi
- الطول
- 8
- حرف
- *
- النتيجة
- ***hi***
- الطول الأصلي
- 2
- طول النتيجة
- 8
- عدد الحشو
- 6
حشو السلسلة في الوسط يعني تمديدها إلى طول محارف ثابت بإدراج محرف حشو مختار بالتساوي على الجانبين حتى يستقر النص الأصلي في منتصف الحقل. تأخذ هذه الأداة النص الذي تُدخله، وطولًا هدفًا صحيحًا غير سالب، ومحرف حشو اختياريًا واحدًا (المسافة افتراضيًا)، ثم تُرجع النتيجة في الوسط مع عدّادَي الحشو يمينًا ويسارًا. تشمل الاستخدامات الكلاسيكية توسيط العناوين في لافتات أحادية العرض وترويسات CLI، وموازنة التسميات داخل إيصالات بعرض ثابت أو أسطر طابعة حرارية، وبناء صفوف فاصلة زخرفية بكلمة قصيرة في الوسط. عندما يكون الطول المطلوب أصغر من طول النص تفشل الطلبية بخطأ تحقق واضح بدل القطع الصامت، فلا تفقد العملاء بياناتهم بالصدفة.
كيف يعمل الحشو في الوسط
يقيس المحرك طول نص الإدخال بوحدات سلسلة JavaScript، ثم يحسب كم وحدة حشو ما زالت لازمة لبلوغ الطول الهدف. عندما يتوفر طول إضافي يُكرَّر محرف الحشو—نقطة رمز Unicode واحدة بالضبط، المسافة افتراضيًا—لبناء المقطع الناقص. يقسم الحشو في الوسط الميزانية دائمًا بـ floor للحاجة على اثنين يسارًا والباقي يمينًا، فيبقى باقي الفردي يمينًا ويُنتج تخطيط وسط مستقرًا وحتميًا في كل مرة.
يُسمح بالنص الفارغ لتوليد سلاسل حشو خالصة بطول معيّن كفواصل. فضّل هذه الصفحة عندما تكون نية البحث حشوًا أو محاذاة في الوسط داخل حقل ثابت لا اختيار الحشو يسارًا فقط أو يمينًا فقط.
أين يظهر حشو الوسط في العمل الحقيقي
توسّط فرق المنتج والنمو عناوين قصيرة داخل لافتات بعرض ثابت وترويسات بريد نصي ومعاينات أحادية العرض في التطبيق حيث المحاذاة بصرية أكثر منها دلالية. يبني مهندسو الخلفية ترويسات CLI زخرفية وفواصل أقسام في السجلات بتسمية في الوسط بين محارف حشو مثل علامات يساوي أو شرطات. تنسّق أنظمة التجزئة والعمليات أسطر الإيصال الحراري وقسائم التذاكر حتى تستقر أسماء المتاجر والمجاميع في وسط عرض عمود ثابت.
توسّط دفاتر البيانات والتحليلات تسميات محاور قصيرة أو عناوين جداول قبل إخراج جداول وحدة تحكم أحادية العرض. فضّل هذه الصفحة عندما تكون نية البحث حشو سلسلة في الوسط أو محاذاة نص في حقل بعرض ثابت أو حشو جانبي تسمية قصيرة؛ وإن احتجت left pad أو right pad أو base64 أو تجزئة أو تحويل حالة الأحرف فاستخدم الأدوات المخصصة بدل تمديد هذه القدرة خارج عقدها.
حالات الاستخدام
توسيط العناوين في لافتات أحادية العرض
احشُ الجانبين بمسافات أو نجوم أو شرطات حتى تستقر التسميات القصيرة في وسط سجلات بعرض ثابت وترويسات CLI ولافتات نصية.
أسطر الإيصالات والتذاكر
وسّط أسماء المتاجر وعناوين الأقسام على طابعات حرارية أو تخطيطات POS تتطلب عدد أعمدة محارف دقيقًا.
تنسيق حقول بعرض ثابت
ابنِ حقولًا بطول ثابت ومحاذاة وسط للتصدير والمعاينات والتجهيزات دون كتابة حساب حشو مرتجل في كل سكربت.
الأسئلة الشائعة
كيف يُقسَم ميزان حشو فردي؟
اليسار يأخذ floor(need/2) محارف حشو واليمين الباقي، فتبقى البواقي الفردية دائمًا يمينًا لتخطيط وسط مستقر.
ما محارف الحشو المسموحة؟
محرف واحد بالضبط لكل طلبية. الافتراضي مسافة. اختيارات شائعة *, -, = أو 0 للافتات والرموز البصرية.
هل يُسمح بالنص الفارغ؟
نعم. نص فارغ بطول موجب يُرجع سلسلة حشو خالصة بذلك الطول، مفيدة لتوليد أسطر فاصلة.
ماذا يحدث إذا كان الطول أقصر من النص؟
تتوقف الأداة بدل قص النص، فلا يختفي أي شيء عن طريق الخطأ. وإذا كان الطول مساويًا لطول النص، يعود إليك النص كما هو دون حشو.
متى يفيد الحشو في الوسط؟
في أسطر الإيصالات والطابعات الحرارية لتوسيط اسم المتجر، وفي عناوين نافذة الأوامر، وفي أسطر الفصل التي تحمل كلمة قصيرة في المنتصف بين علامات يساوي أو شرطات.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/str/pad-center \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"hi","length":8}'const res = await fetch("https://api.kit.forhosting.com/str/pad-center", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "hi",
"length": 8
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/pad-center",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "hi",
"length": 8
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/pad-center", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"hi","length":8}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"hi","length":8}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/pad-center", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"text": "hi",
"length": 8
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.pad_center",
"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 و length. text هو السلسلة المراد حشوها في الوسط؛ تُقبل الأسماء البديلة مثل input و value و data و s و message و string و content و body للعملاء القدامى. length عدد محارف إجمالي هدف صحيح غير سالب؛ تعمل الأسماء البديلة width و target و size و n عند حذف length. char الاختياري (أسماء بديلة pad_char و fill و pad و padding) محرف واحد؛ احذفه للحشو بمسافات. عند النجاح تعيد الاستجابة text و length و char مع result و original_length و result_length للسلسلة المحشوة و pad_count و pad_left و pad_right و operation بقيمة pad_center. تشمل الفحوصات الكلاسيكية text يساوي hi و length ثمانية و char نجمة فتصير ثلاث نجمات ثم hi ثم ثلاث نجمات؛ و hello بطول أحد عشر ومسافة افتراضية فثلاث مسافات ثم hello ثم ثلاث مسافات؛ و ab بطول خمسة ونجمة فتنتج نجمة واحدة ثم ab ثم نجمتين لأن الباقي يمينًا. تسعير استدعاءات API الناجحة هو القاعدة المنشورة $0.002 لكل عنصر؛ إخفاقات التحقق بما فيها length أقل من طول النص لا تستهلك الرصيد المدفوع مسبقًا.
أين يظهر حشو الوسط في العمل الحقيقي
يحتاج المطوّرون الذين يكتبون منسّقات ومولّدات شيفرة وتجهيزات اختبار إلى مرجع حتمي يعيد شكل JSON نفسه في أداة المتصفح وواجهة API حتى لا تنحرف الذهبيات. لأن هذه القدرة محرك parse نقي فسعر API هو القاعدة المنشورة $0.002 لكل عنصر ناجح والتحقق الفاشل لا يستهلك الرصيد.
أسئلة تقنية
ماذا يحدث إذا كان الطول أصغر من النص؟
تفشل الطلبية بـ invalid_input. هذه الأداة لا تقطع أبدًا؛ يجب أن يكون الطول الهدف أكبر من أو يساوي طول النص.
كم التكلفة؟
أداة المتصفح مجانية وتعمل محليًا. طلبات API تستخدم رصيد KIT المدفوع مسبقًا بسعر $0.002 لكل عنصر ناجح؛ الإدخال غير الصالح لا يُحاسب.