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

محوّل حالة الأحرف

تصبح Hello World هي HELLO WORLD بالأحرف الكبيرة، ويمكن للنص نفسه أن ينتقل إلى أي نمط من تسعة أنماط، من حالة العنوان والجملة إلى camel وsnake وkebab. وحتى HTMLParser2 ينقسم بدقة إلى html وparser و2. مجاني في متصفحك.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا
إذا أدخلت
النص
Hello World
النمط
أحرف كبيرة
تحصل على
النتيجة
HELLO WORLD

camel وsnake وTitle مجانًا في المتصفح

تسعة أنماط للكتابة وللبرمجة

أربعة أنماط مخصصة للكتابة العادية. الأحرف الكبيرة والصغيرة تغيّر كل حرف. وحالة العنوان تكبّر الحرف الأول من كل كلمة وتصغّر الباقي مع الحفاظ على المسافات كما هي. أما حالة الجملة فتصغّر النص كله ثم تكبّر أول حرف فيه وأول حرف بعد كل نقطة أو علامة استفهام أو تعجب، فتناسب الفقرات الكاملة. والأنماط الخمسة الأخرى هي أعراف التسمية في البرمجة وعناوين الويب: camel وPascal وsnake وkebab وconstant، وهي تربط الكلمات بأحرف كبيرة أو شرطات سفلية أو شرطات.

كيف تُكتشف الكلمات قبل ربطها

في أنماط البرمجة الخمسة يُقسَّم النص أولًا إلى كلمات. فإذا كان فيه مسافات أو شرطات سفلية أو شرطات، كانت هي مواضع الفصل، وتُحذف أي علامات ترقيم أخرى من كل كلمة. وإذا لم توجد فواصل، يبحث المحوّل عن الحدود داخل الكلمات المكتوبة بأسلوب camelCase وحول الأرقام، فيصبح HTMLParser2 ثلاث كلمات هي html وparser و2 قبل ربطها من جديد. ولأن كل الأنماط تستخدم التقسيم نفسه، لا يضيع شيء عند نقل الكلمات العادية بين snake وkebab. ومن الاستخدامات الشائعة تحويل اسم منتج إلى نمط kebab لعنوان صفحة أو اسم ملف.

أوضاع الحالات التسعة

تأخذ الأداة حقلين مطلوبين، text وmode، حيث mode إحدى تسع قيم. ويُطابِق upper وlower مباشرةً toUpperCase وtoLowerCase في جافاسكربت. ويقسم title السلسلة على تعاقبات المسافات البيضاء ويجعل أول حرف من كل كلمة كبيرًا ويصغّر البقية، محافظًا على التباعد الدقيق بين الكلمات.

ويصغّر sentence كل شيء أولًا، ثم يكبّر أول حرف يونيكود وأول حرف بعد كل نقطة أو علامة استفهام أو تعجّب، مما يجعله متينًا عبر الفقرات المتعدّدة الجمل. والأوضاع الخمسة الباقية أنماط معرّفات المبرمجين: يصغّر camel الرمز الأول ويجعل البقية بحالة Pascal، ويكبّر pascal كل رمز، ويصل snake وkebab الرموز المصغَّرة بشرطة سفلية أو واصلة، ويصل constant الرموز المكبَّرة بشرطة سفلية. ويعود الوضع المطلوب دائمًا كما هو في الاستجابة.

كيف يقسم المُجزِّئ المعرّفات

لأوضاع المعرّفات الخمسة يُجزَّأ النصّ أولًا. فإن كانت السلسلة تحوي أصلًا مسافات أو شرطات سفلية أو واصلات، قُسمت على تعاقبات تلك الأحرف؛ ثم يُجرَّد كل رمز من كل حرف غير أبجدي رقمي وتُسقَط الرموز الفارغة. وإن لم توجد فواصل، فإن المُجزِّئ يكتشف بدلًا من ذلك الحدود داخل camelCase وحول الأرقام: فيُدخِل فواصل بين حرف صغير-أو-رقم وحرف كبير، وبين تعاقب اختصار وكلمة تالية مكبَّرة، وعلى جانبَي تعاقب أرقام.

تنسيق العناوين

طبّق حالة title أو sentence على عناوين نظام CMS كي يحصل المحرّرون على تكبير حروف متّسق دون إعادة كتابة.

توليد الروابط الوصفية

حوّل اسم منتج إلى kebab-case لروابط URL الوصفية وأسماء الملفات، مع تجريد الترقيم تلقائيًّا.

أي أنماط الحالات مدعومة؟

تسعة: ‏upper وlower وtitle وsentence وcamel وpascal وsnake وkebab وconstant.

كيف يقسم إدخال camelCase؟

حين لا توجد فواصل يقسم على تغيّرات الحالة وحدود الأرقام، فتُجزَّأ myVar2 إلى my وvar و2.

ما الفرق بين حالة العنوان وحالة الجملة؟

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

هل يمكنني تحويل اسم منتج إلى عنوان صفحة ويب؟

نعم. اختر نمط kebab: تتحول الكلمات إلى أحرف صغيرة وتُربط بشرطات، وتُحذف علامات الترقيم الزائدة، فتصبح النتيجة صالحة لعنوان صفحة أو اسم ملف.

هل يضيع شيء عند التحويل بين snake وkebab؟

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

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

POSThttps://api.kit.forhosting.com/text/case-convert

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

curl -X POST https://api.kit.forhosting.com/text/case-convert \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"hello_world","mode":"camel"}'
{
  "text": "hello_world",
  "mode": "camel"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "text.case_convert",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

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

لكل طلب$0.002

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

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

يحوّل سلسلة نصّ إلى إحدى تسع حالات أحرف — upper أو lower أو title أو sentence أو camel أو pascal أو snake أو kebab أو constant — ويُعيد الوضع الأصلي والنصّ والنتيجة المحوَّلة بصيغة JSON.

كيف يقسم المُجزِّئ المعرّفات

فتنقسم HTMLParser2 إلى html وparser و2، أي أن snake يعطي html_parser_2 وconstant يعطي HTML_PARSER_2. ولأن المُجزِّئ نفسه يغذّي كل أوضاع المعرّفات، فإن تحويل قيمة بين snake_case وkebab-case يكون بلا خسارة للكلمات الأبجدية الرقمية الصرفة، ولا يتسرّب أي ترقيم شارد إلى معرّف.

التحقق والحدود وشكل الإخراج

يجري التحقق قبل أي تحويل. والتحويل حتميّ صرف: لا تُستشار ساعة ولا عشوائية ولا إعداد لغوي بيئي، فيُنتج النصّ والوضع نفساهما دائمًا إخراجًا متطابقًا بايتًا ببايت وتبقى الأمثلة الذهبية في المستودع صالحةً اختبارات انحدار. فيجب أن يكون الإدخال كائنًا صرفًا؛ ويجب أن يكون text سلسلةً وmode إحدى قيم التعداد التسع، وإلا أُطلق خطأ invalid_input مُصنَّف يسمّي الحقل المخالف بدل انهيار غير مُصنَّف. ويُحدَّد text عند 100000 حرف، وأي شيء أطول يُرفض كي لا تُوقِف حمولة واحدة مفرطة الحجم تبويب المتصفح أو الـ Worker. وعند النجاح تكون الاستجابة كائن JSON مستقرًّا بثلاثة مفاتيح بالضبط — mode وtext وresult — يُعيد الوضع المطلوب والنصّ الأصلي إلى جانب السلسلة المحوَّلة، فيمكن للشيفرة اللاحقة أن تسجّل كليهما أو تقارنهما دون استدعاء ثانٍ.

تسوية المعرّفات

حوّل أسماء أعمدة قاعدة البيانات أو مفاتيح JSON إلى camelCase أو snake_case أو CONSTANT_CASE بالجملة أثناء ترحيل بيانات.

هل ثمّة حدّ للطول؟

نعم، يُحدَّد text عند 100000 حرف؛ والإدخال الأطول يُعيد invalid_input.

ماذا تحوي الاستجابة؟

كائن JSON بـ mode وtext وresult. ويُنتج الإدخال نفسه دائمًا الإخراج نفسه.

هل هو مجاني؟

نعم في المتصفح (tier A). ويستعمل API رصيد KIT مدفوعًا مسبقًا يبدأ من $0.002؛ ولا تُحتسب المهام الفاشلة.

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