محول حالة الأحرف
الصق النص وبدّل بين ثمانية أنماط لحالة الأحرف: أربعة للكتابة وأربعة للبرمجة. تتحدّث النتيجة أثناء الكتابة، وتحتفظ بفواصل الأسطر، وتتبع قواعد حالة الأحرف في Unicode بدلًا من جدول بسيط من A إلى Z.
0 حرفًا · 0 كلمة · 0 سطرًا
0 حرفًا · 0 كلمة · 0 سطرًا
يعمل بالكامل داخل علامة تبويب المتصفح هذه. لا يُرفع نصك ولا يُخزَّن أبدًا.
ماذا تفعل
محوّل حالة الأحرف تعيد كتابة حالة الأحرف: UPPER CASE وlower case وTitle Case وSentence case، وأنماط المبرمجين camelCase وsnake_case وkebab-case، وaLtErNaTiNg case. تعتمد تعيين حالة Unicode، مع خيار للحرف i المنقوط وغير المنقوط في التركية.
User Profile ID
user_profile_id
الأنماط الثمانية ومجال استخدام كل منها
UPPER CASE وlower case لا يحتاجان إلى تعريف، لكنهما نادرًا ما يكونان الهدف النهائي: فالعناوين تحتاج عادةً إلى Title Case، حيث تبدأ كل كلمة بحرف كبير، والنص الذي لُصق بأحرف كبيرة كلها يحتاج عادةً إلى Sentence case، حيث يُكتب الحرف الأول من كل جملة فقط بحرف كبير. وتختلف أدلة الأسلوب في شأن الكلمات القصيرة في العناوين (يكتب AP وChicago حروف الجر والأدوات القصيرة بأحرف صغيرة، لكن بقوائم مختلفة)، لذلك يجعل هذا المحول كل كلمة تبدأ بحرف كبير ويترك الاستثناءات لك.
تقسم أنماط الأكواد النص إلى كلمات عند المسافات وعلامات الترقيم والأحرف الكبيرة الموجودة، لذلك يصبح XMLHttpRequest في نمط snake_case هو xml_http_request. camelCase هو العرف المتبع في JavaScript وJava لأسماء المتغيرات، وsnake_case هو المعتمد في Python وأسماء أعمدة SQL، وkebab-case يُستخدم في الروابط وأسماء فئات CSS وأسماء الملفات. أما نمط aLtErNaTiNg فهو للزخرفة فقط ويظهر غالبًا في الميمات.
لماذا يُعدّ تحويل حالة الأحرف أصعب مما يبدو؟
يحدد معيار Unicode تحويل حالة الأحرف، لا الأحرف الـ26 في الإنجليزية، وبعض التحويلات تغيّر طول النص. فالحرف الألماني ß يصبح SS في الأحرف الكبيرة، فتزيد الكلمة حرفًا واحدًا. والحرف اليوناني الكبير Σ له شكلان صغيران: σ داخل الكلمة وς في آخرها. والحروف المركبة مثل fi تتحول إلى حرفين عند تكبيرها.
في التركية والأذرية أربعة أحرف مقابل حرفين في الإنجليزية: i المنقوطة وİ، وı غير المنقوطة وI. وفق قواعد Unicode الافتراضية، يؤدي تصغير "İ" إلى i متبوعة بنقطة مركبة، ويؤدي تكبير "i" إلى I عادية، فتتحول istanbul إلى إملاء خاطئ. فعّل الخيار التركي ليستخدم المحول التحويل الخاص باللغة، فتصبح istanbul هي İSTANBUL وتصبح ILIK هي ılık. ولهذا قد يفشل الكود الذي يقارن النصوص بـ toUpperCase مع المستخدمين الأتراك، وهي علّة شهيرة لها اسم خاص: اختبار تركيا (Turkey test).
نصائح للحصول على نتائج سليمة
الاختصارات هي أهم ما يجب مراجعته بعد التحويل. يكتب Title Case كلمة NASA هكذا Nasa، ويكتبها Sentence case هكذا nasa، لأن المحول لا يعرف أي الكلمات أسماء علم. صحّحها يدويًا، أو حوّل الجزء الذي يحتاج إلى ذلك فقط من النص. وعند تجهيز المعرّفات، احذف أولًا رموزًا مثل علامات الاقتباس والإيموجي؛ فهي تُحذف من ناتج camelCase وsnake_case وkebab-case. وإذا أردت معرفة طول النص بالكلمات أو الأحرف، فالصقه في عداد الكلمات.
الأسئلة الشائعة
- هل يحتفظ محول حالة الأحرف بفواصل الأسطر؟
- نعم. يعمل كل نمط سطرًا بسطر، فتحتفظ القوائم والفقرات بشكلها. وفي camelCase وsnake_case وkebab-case يصبح كل سطر معرّفًا مستقلًا.
- لماذا تحوّل حرف ß الألماني إلى SS؟
- هذا هو التحويل القياسي في Unicode للحرف ß إلى الأحرف الكبيرة. يوجد حرف ẞ الكبير (أضيف في Unicode 5.1)، لكن التحويل الافتراضي ما زال ينتج SS، كما تتطلب قواعد الإملاء الألمانية تقليديًا.
- كيف يفصل المحول الكلمات في نمط snake_case؟
- يبدأ كلمة جديدة عند كل مسافة أو علامة ترقيم، وعند كل انتقال من حرف صغير إلى كبير، وقبل آخر حرف كبير في الاختصار إذا تبعه حرف صغير، لذلك يصبح HTMLParser هو html_parser.
- متى ينبغي تفعيل القواعد التركية؟
- كلما كان النص تركيًا أو أذريًا. بدونهما يُحوَّل i وI كما في الإنجليزية، فتُكتب خطأً الكلمات التي تحتوي على İ المنقوطة الكبيرة أو ı الصغيرة غير المنقوطة.
- هل يمكن التحويل إلى PascalCase؟
- استخدم camelCase واجعل الحرف الأول من كل سطر كبيرًا؛ فـ PascalCase يختلف في هذا الحرف الأول فقط. أما نمط الثوابت (UPPER_SNAKE_CASE) فهو snake_case متبوعًا بـ UPPER CASE.