متن کو snake_case میں تبدیل کرنا underscore_case مفت آن لائن محفوظ
ایک سطر چسپاں کیجیے اور فوراً snake_case میں پڑھیے۔ سب کچھ آپ ہی کے براؤزر میں ہوتا ہے — جو آپ لکھتے ہیں وہ کہیں نہیں بھیجا جاتا — اور اصول انگریزی کے نہیں، اس صفحے کی زبان کے ہیں۔
اسے کسی اور طرح لکھیے
کچھ بھی اپ لوڈ نہیں
وہی سطر، ساتوں لکھائیوں میں
| لکھائی | وہی سطر، اُس طرح لکھی ہوئی |
|---|---|
| بڑے حروف | CRÈME BRÛLÉE دو کے لیے — STRASSE 17, FOOBAR |
| چھوٹے حروف | crème brûlée دو کے لیے — straße 17, foobar |
| Title Case | Crème Brûlée دو کے لیے — Straße 17, Foobar |
| snake_case | crème_brûlée_دو_کے_لیے_straße_17_foo_bar |
| kebab-case | crème-brûlée-دو-کے-لیے-straße-17-foo-bar |
| camelCase | crèmeBrûléeدوکےلیےStraße17FooBar |
| ایک URL پتہ | creme-brulee-دو-کے-لیے-strasse-17-foobar |
یہ صورتیں کہاں سے آئیں
بڑے اور چھوٹے حروف کبھی دو الگ حروفِ تہجی تھے۔ بڑے حروف رومی ہیں، چھینی سے پتھر میں کھودے گئے؛ چھوٹے حروف کیرولنجین چھوٹی تحریر سے اترے ہیں، جسے چمڑے پر تیز دوڑتے قلم نے گھڑا۔ طابعوں نے دونوں کو الگ الگ خانوں میں رکھا — اوپر والا خانہ اور نیچے والا — اور خانے مٹ جانے کے بہت بعد تک نام باقی رہے۔ پروگرامنگ کی صورتیں کہیں نوجوان ہیں اور ایک ہی مسئلہ حل کرنے کے لیے ایجاد ہوئیں: کسی نام میں خالی جگہ نہیں آ سکتی۔ snake_case ابتدائی C سے نکلا، camelCase سمال ٹاک سے، kebab-case لِسپ سے، اور پتے کا slug اس ضرورت سے کہ انسانوں کے پڑھنے کا عنوان ایسے پتے میں رکھا جائے جہاں خالی جگہیں اور اعراب جائز نہیں۔
آپ انہیں کہاں ملتے ہیں
ہر لفظ کا پہلا حرف بڑا کرنا سرخیوں اور کتابوں کے سرورق کا کام ہے؛ صرف جملے کا پہلا حرف بڑا کرنا باقی تقریباً ہر چیز کا، اور بڑھتے بڑھتے مظاہر کا بھی، کیونکہ وہ تیزی سے پڑھا جاتا ہے۔ snake_case ڈیٹابیس کے کالموں اور پائتھون کے متغیرات کو نام دیتا ہے؛ camelCase جاوا اسکرپٹ کے متغیرات اور جاوا کے طریقوں کو؛ kebab-case سی ایس ایس کی اصناف اور ویب منصوبوں میں فائلوں کے ناموں کو۔ slug وہ ہے جو کسی مضمون کی سرخی کو اس کے پتے کا آخری حصہ بنا دیتا ہے، اور یہاں کی تبدیلیوں میں صرف وہی ہے جسے تلاش کے انجن پڑھتے ہیں۔
اکثر پوچھے جانے والے سوالات
بڑے حروف میں بدلنے سے حروف کی تعداد کبھی کبھی کیوں بدل جاتی ہے؟
کیونکہ حرف کا چھوٹا بڑا ہونا زبان کی خاصیت ہے، حرف کی نہیں۔ جرمن ß بڑے حروف میں SS بن جاتا ہے، سو ایک حرف دو ہو جاتا ہے۔ ترکی میں نقطے والا اور بے نقطہ دونوں طرح کا i ہے، اور i کا بڑا حرف I نہیں بلکہ İ ہے — یہاں غلطی ایک ترکی لفظ کو دوسرا لفظ بنا دیتی ہے۔ یہاں کی تبدیلیاں صفحے کی اپنی زبان کے قواعد پر چلتی ہیں، اسی لیے ایک ہی عبارت ترکی صفحے پر انگریزی صفحے سے مختلف نتیجہ دے سکتی ہے۔
slug اعراب اور اوقاف کیوں ہٹا دیتا ہے؟
کیونکہ پتے کو یہ سب جھیلنا ہوتا ہے: پیغام میں نقل ہونا، کاغذ پر چھپنا، اور ہاتھ سے دوبارہ لکھا جانا۔ اعراب والے حروف آج کے پتوں میں جائز ہیں، مگر نقل کرتے وقت فی صد کے رموز میں بدل جاتے ہیں، اور ایک پڑھا جانے والا پتہ علامتوں کی قطار بن جاتا ہے۔ انہیں سادہ حروف، ہندسوں اور خطِ وصل تک گھٹا دینا پتے کو پڑھنے کے قابل، بانٹنے کے قابل اور ہر جگہ یکساں رکھتا ہے۔
کیا جواب بالکل درست ہے؟
جہاں دونوں اکائیاں ایک دوسرے سے صحیح اعداد میں متعین ہوں، وہاں ہاں — صفحہ یہ بات عدد کے اوپر کہتا ہے، اور واحد گولائی اس میں ہے کہ کتنے ہندسے دکھائے جائیں۔ جہاں نسبت کا اعشاریہ ختم نہ ہوتا ہو، صفحہ بارہ بامعنی ہندسے دکھاتا ہے اور کہتا ہے کہ تعلق تقریبی ہے، بجائے اس کے کہ کچھ اور ظاہر کرے۔
جو میں لکھتا ہوں وہ میرے آلے سے باہر جاتا ہے؟
نہیں۔ حساب آپ ہی کے براؤزر میں ہوتا ہے؛ کچھ اپ لوڈ نہیں ہوتا، اور نہ ہی کوئی سرور ہے جہاں ہو۔ صفحہ ایک بار کھل جائے تو نیٹ ورک بند ہونے پر بھی چلتا ہے۔
آپ متن کو snake_case میں کیوں تبدیل کرتے ہیں
پروگرامر متغیر کا نام annual report total نہیں رکھ سکتا، کیونکہ نام میں خالی جگہ نہیں ہو سکتی۔ ڈیٹا بیس کے کالم کو Customer First Name نہیں کہا جا سکتا۔ Final Draft (2).docx نامی فائل دیر یا سویر کسی اسکرپٹ کو تنگ کرے گی۔ راستے میں کہیں انسانی فقرے کو ایک ہی لفظ بننا پڑتا ہے، اور وہ شکل جس پر بہت سی برادریاں ٹھہریں snake_case ہے: تمام حروف چھوٹے، الفاظ انڈرسکور سے جڑے، annual_report_total، customer_first_name، final_draft_2۔ متن کو snake_case میں تبدیل کرنے کا مطلب ہے کسی بھی فقرے کو، کسی بھی حالت میں، ایک قدم میں اس شکل میں بدل دینا۔
ایک سطر چسپاں کیجیے اور اسے snake_case میں واپس پڑھیے۔ تبدیلی آپ کے براؤزر میں ہوتی ہے، آپ جو ٹائپ کرتے ہیں وہ کہیں نہیں بھیجا جاتا، اور قواعد اس صفحے کی زبان کی پیروی کرتے ہیں، انگریزی کی نہیں۔ یہ سطر کو الفاظ میں کاٹتا ہے، انہیں چھوٹے حروف میں کرتا ہے اور انڈرسکور سے جوڑتا ہے۔ جو سطر پہلے ہی camelCase میں لکھی ہو وہ اپنے بڑے حروف پر بھی کٹتی ہے، اس لیے fooBar بن جاتا ہے foo_bar۔ نیچے آپ کو ٹھیک ملے گا کہ اس کا مطلب کیا ہے، کیا چھوڑا جاتا ہے، صفحہ مختلف زبانوں کے مشکل حروف سے کیسے پیش آتا ہے، snake_case کہاں رواج ہے اور کہاں نہیں، اور وہ جال جو جلدی میں متن کو snake_case میں تبدیل کرنے والوں کو پھانستے ہیں۔
تبدیلی کیا کرتی ہے
کاٹنا، چھوٹے حروف، جوڑنا
صفحہ پہلے سطر کو الفاظ میں کاٹتا ہے۔ پھر ہر ایک کو چھوٹے حروف میں کرتا ہے اور انڈرسکور سے جوڑتا ہے۔ سطر Crème brûlée for 2 — straße 17, fooBar واپس آتی ہے crème_brûlée_for_2_straße_17_foo_bar کے طور پر۔ لہجے کے نشان رکھے جاتے ہیں، اعداد اپنے الگ لفظ کی طرح رہتے ہیں، ڈیش اور کوما غائب ہیں، اور fooBar دو حصوں میں کٹ گیا ہے، کیونکہ اس کے اندر کا بڑا حرف حد نشان زد کرتا ہے۔
کٹاؤ کہاں پڑتے ہیں
لفظ کی حد ایک خالی جگہ، رموزِ اوقاف کا نشان، ڈیش، علامت یا لفظ کے اندر چھوٹے حرف سے بڑے حرف کی تبدیلی ہے۔ اس لیے فقرہ customerFirstName، فقرہ Customer First Name اور فقرہ customer-first-name سب customer_first_name بن جاتے ہیں۔ یہی تبدیلی کی عملی طاقت ہے: یہ تقریباً کسی بھی نقطۂ آغاز کو قبول کرتی ہے اور ہمیشہ اسی جگہ پہنچتی ہے۔
نتیجہ نقل کرنا
نتیجے کے برابر کا بٹن اسے کلپ بورڈ پر نقل کرتا ہے۔ اسے ایڈیٹر، اسکیما یا فائل ڈائیلاگ میں چسپاں کیجیے جہاں نام درکار ہے۔
تبدیلی کیا نہیں کرتی
یہ رموزِ اوقاف نہیں رکھتی
کوما، نقطے اور ڈیش الفاظ کے درمیان حدود ہیں، آگے لے جانے والے حروف نہیں۔ فائل کے نام یا ڈیٹا بیس کے کالم کے لیے آپ یہی چاہتے ہیں، اور نثر کے لیے نہیں۔ اگر آپ صفحے سے جملہ گزاریں تو وہ جملے کے طور پر نہیں بلکہ نام کے طور پر لوٹتا ہے، اور اصل رموزِ اوقاف غائب ہوتے ہیں۔
یہ لہجے کے نشان نہیں ہٹاتی
سطر اپنے لہجے والے حروف رکھتی ہے: crème_brûlée۔ بہت سے سسٹم انہیں قبول کرتے ہیں، لیکن کچھ نہیں کرتے، اور ان پر مشتمل نام پرانے اوزاروں میں پریشانی کا باعث ہو سکتا ہے۔ اگر آپ کو سادہ حروف چاہییں تو URL سلگ صفحہ استعمال کیجیے، جو لاطینی حروف سے نشان اتارتا ہے۔
یہ جانچتی نہیں کہ نام آپ کی زبان میں جائز ہے
پروگرامنگ زبانوں کے اپنے قواعد ہیں۔ کچھ ہندسے سے شروع ہونے والے نام کو منع کرتی ہیں، کچھ class یا return جیسے الفاظ محفوظ رکھتی ہیں۔ صفحہ متن کو درست شکل کے نام میں بدلتا ہے، اور آپ کو پھر بھی یقینی بنانا ہوتا ہے کہ نام وہاں جائز ہے جہاں آپ اسے استعمال کریں۔ 2 for 1 offer جیسا فقرہ 2_for_1_offer بن جاتا ہے، جسے بیشتر زبانیں شروع ہی میں رد کر دیتی ہیں۔
زبان اہم ہے
خالی جگہ کے بغیر لکھی جانے والی تحریریں
الفاظ میں کاٹنے کو حدود چاہییں۔ چینی اور جاپانی خالی جگہ کے بغیر لکھی جاتی ہیں، اس لیے ان رسم الخط کی سطر ایک ہی لفظ کے طور پر لوٹتی ہے۔ صفحہ اندازے سے کسی جگہ کاٹنے کے بجائے یہی کہنا پسند کرتا ہے، کیونکہ غلط کٹاؤ ایسا نام بنائے گا جو قابلِ یقین لگے اور غلط مطلب رکھے۔
ترکی اور نقطے والا i
چھوٹے حروف میں بدلنا صفحے کی زبان کے قواعد کی پیروی کرتا ہے۔ ترکی میں I کی چھوٹی شکل بغیر نقطے کا ı ہے، اور İ کی چھوٹی شکل i۔ انگریزی قواعد لگانے والا کنورٹر الفاظ بدل دیتا ہے۔ یہ صفحہ اس زبان کی پیروی کرتا ہے جس میں لکھا گیا ہے۔
جرمن اور تیز s
جرمن ß پہلے ہی چھوٹا حرف ہے اور رکھا جاتا ہے، جیسے straße_17 میں۔ بڑا STRASSE واپس آتا ہے strasse کے طور پر، کیونکہ بڑی شکل کو یاد نہیں رہتا کہ وہ ß سے آئی تھی یا دو حروف سے۔
دائیں سے بائیں اور ہندوستانی رسم الخط
عربی، عبرانی اور ہندوستانی رسم الخط میں الفاظ کے درمیان خالی جگہیں ہوتی ہیں اور بڑے چھوٹے حروف نہیں، اس لیے صفحہ ان کے الفاظ کو انڈرسکور سے جوڑتا ہے اور حروف کو جیسا ہے ویسا چھوڑ دیتا ہے۔ کوئی خاص اوزار ایسے نام قبول کرتا ہے یا نہیں، یہ دوسرا سوال ہے۔
جہاں snake_case رواج ہے
Python اور Ruby
Python کی اسٹائل گائیڈ فنکشنز، متغیرات اور ماڈیولز کے لیے snake_case تجویز کرتی ہے، اور Ruby اسی عادت کی پیروی کرتا ہے۔ اگر آپ دونوں میں سے کسی میں کوڈ لکھتے ہیں تو آپ کے نام تقریباً ہمیشہ اسی شکل میں ہوتے ہیں۔
ڈیٹا بیس
SQL میں جدول اور کالم کے نام عموماً snake_case ہیں: customer_id، created_at، order_total۔ یہ ناموں کو اقتباس میں لکھنے کی ضرورت سے بچاتا ہے اور ڈیٹا بیس سسٹموں میں محفوظ ہے، جن میں سے کچھ بغیر اقتباس کے ناموں کو ایک حالت میں تہہ کرتے ہیں اور camelCase کو حروف کی ناقابلِ مطالعہ لڑی بنا دیتے۔
ڈیٹا فائلیں اور API
بہت سی ویب سروسز اپنی JSON میں snake_case کلیدیں استعمال کرتی ہیں، اور مزید پروسیسنگ کے لیے برآمد کی گئی اسپریڈ شیٹس اکثر snake_case ہیڈر رکھتی ہیں۔ اگر آپ کا ڈیٹا CSV سے JSON سے گزر رہا ہے تو ہیڈر کی قطار کلیدیں بنتی ہے، اور صاف snake_case ہیڈر نتیجے کو استعمال میں آسان بناتے ہیں۔
مستقل اقدار اور ماحولیاتی متغیرات
مستقل اقدار اور ماحولیاتی متغیرات روایتاً انڈرسکور کے ساتھ بڑے حروف میں لکھے جاتے ہیں: MAX_RETRIES، DATABASE_URL۔ انہیں پانے کا طریقہ یہ ہے کہ پہلے متن کو snake_case میں تبدیل کیجیے اور پھر متن کو بڑے حروف میں تبدیل کیجیے سے نتیجے کو اونچا کیجیے۔
فائل کے نام
انڈرسکور کے ساتھ چھوٹے حروف ہر سسٹم پر محفوظ فائل کا نام ہے، اور یہ قابلِ پیش گوئی ترتیب اور تلاش دیتا ہے۔ بہت سے فوٹوگرافر، محققین اور منتظمین اسی وجہ سے اسے استعمال کرتے ہیں۔
جہاں یہ رواج نہیں
JavaScript اور Java
یہ زبانیں متغیرات اور فنکشنز کے لیے camelCase کو ترجیح دیتی ہیں، اور کلاسوں کے لیے PascalCase۔ Python اسکرپٹ کے نام کو JavaScript فائل میں آنے سے پہلے تبدیل کرنے کی ضرورت پڑ سکتی ہے۔ اس کے لیے camelCase دیکھیے۔
CSS اور ویب پتے
CSS کلاس کے نام اور ویب پتے عموماً انڈرسکور کے بجائے ہائفن استعمال کرتے ہیں۔ اس کے لیے اوزار kebab-case ہے۔ سرچ انجن ہائفن کو لفظ جدا کرنے والا اور انڈرسکور کو جوڑنے والا سمجھتے ہیں، ایک چھوٹا فرق جو ہائفن والے پتوں کی عادت کے پیچھے ہے۔
نثر اور عنوانات
snake_case ناموں کے لیے ہے، پڑھنے کے لیے نہیں۔ اس میں عنوان یا جملہ آنکھ پر بھاری ہے۔ انسانی متن کے لیے الفاظ اور خالی جگہیں رکھیے، اور عنوان کے لیے Title Case پر غور کیجیے۔
یہاں متن کو snake_case میں کیسے تبدیل کریں
اپنا متن چسپاں کیجیے یا ٹائپ کیجیے
فقرہ پہلے خانے میں درج کیجیے۔ نتیجہ دوسرے میں فوراً ظاہر ہوتا ہے، اس لیے آپ ٹائپ کرتے ہوئے اسے بدلتا دیکھ سکتے ہیں۔
کٹاؤ جانچیے
دیکھیے کہ الفاظ کہاں تقسیم ہوئے۔ iPhone یا eBay جیسا لفظ بڑے حرف پر کٹتا ہے، اور HTTPServer جیسے مخفف پر ایک نظر درکار ہے کہ وہ ویسا نکلا جیسا آپ کا ارادہ تھا۔
نقل کیجیے
نقل کا بٹن دبائیے اور نتیجہ وہاں چسپاں کیجیے جہاں چاہیے۔ اسی سطر کی دوسری شکلوں کے لیے نیچے دیکھیے۔
پورے پروجیکٹ میں snake_case استعمال کرنا
پورے اسٹیک کے لیے ایک رواج
ناموں کے اسٹائل ملانے والا پروجیکٹ اس پروجیکٹ سے پڑھنے میں مشکل ہے جو ذرا بدصورت مگر یکساں ہو۔ اگر ڈیٹا بیس snake_case استعمال کرتا ہے تو اس سے بات کرنے والا کوڈ بھی اکثر کرتا ہے، اور ان کے درمیان جانے والی فائلیں پیروی کرتی ہیں۔ جب آپ نئے کالم یا نئی فیلڈ کے لیے متن کو snake_case میں تبدیل کریں تو آپ وہ نام چن رہے ہیں جس کے ساتھ ہر دوسری تہہ کو جینا ہوگا، اس لیے اسے ایک بار چنیے اور آگے لے جائیے۔
رواجوں کے درمیان نام منتقل کرنا
دیر یا سویر ایک رواج کے نام کو دوسرے میں ظاہر ہونا پڑتا ہے۔ ڈیٹا بیس کا کالم customer_first_name JavaScript اوبجیکٹ میں customerFirstName بن جاتا ہے اور CSS کلاس یا URL میں customer-first-name۔ ہر ایک کو ہاتھ سے دوبارہ ٹائپ کرنے کے بجائے اصل کو اس صفحے میں چسپاں کیجیے جو مطلوبہ شکل بناتا ہے: C اور JavaScript خاندانوں کے کوڈ کے لیے camelCase اور اسٹائل اور پتوں کے لیے kebab-case۔ ایک ہی نام کی تینوں شکلیں ایک دوسرے کے عین ترجمے ہیں، اور کنورٹر انہیں یکساں بناتا ہے۔
کنفیگریشن فائلیں
ترتیبات کی فائلیں اکثر snake_case کلیدیں استعمال کرتی ہیں، خاص طور پر بہت سے اوزاروں کے استعمال ہونے والے YAML میں۔ جب آپ JSON کے طور پر رکھے ڈیٹا سے ایسی فائل تیار کریں تو JSON سے YAML کلیدیں ویسی ہی رکھتا ہے جیسی آپ نے لکھیں، اور YAML سے JSON الٹ کرتا ہے۔ شروع کرنے سے پہلے کلیدوں کے لیے snake_case پر طے ہو جائیے، اور فارمیٹوں کے درمیان تبدیلی انہیں نہیں چھیڑے گی۔
تھوک میں نام بدلنا
اگر آپ کو ایسی ڈیٹا فائل ورثے میں ملے جس کے ہیڈر اسٹائلوں کا آمیزہ ہوں تو ہر ہیڈر کو اس صفحے سے تبدیل کیجیے اور انہیں ایک ہی بار میں بدل دیجیے۔ پہلے چھوٹے نمونے پر آزمائیے، کیونکہ جو اسکرپٹ فائل کو ہیڈر سے پڑھتا ہے وہ ٹوٹ جائے گا اگر نام صرف کچھ جگہوں پر بدلے۔ فائل کے ساتھ پرانے اور نئے ناموں کی فہرست رکھیے تاکہ ساتھی دیکھ سکے کہ کیا بدلا۔
دیرپا نام لکھنا
بتائیے کہ چیز کیا ہے، یہ نہیں کہ کیسے محفوظ ہے
اچھا نام مواد بیان کرتا ہے۔ order_total بتاتا ہے کہ عدد کا کیا مطلب ہے؛ col7 نہیں بتاتا۔ جب آپ متن کو snake_case میں تبدیل کریں تو یقینی بنائیے کہ جس فقرے سے آپ شروع کر رہے ہیں وہ سب سے واضح ہے جو آپ لکھ سکتے ہیں، کیونکہ کنورٹر اس کی وضاحت یا اس کا الجھاؤ وفاداری سے محفوظ رکھے گا۔
ایسے مخففات سے بچیے جنہیں صرف آپ سمجھیں
cust_fn_dt جیسا نام کسی اور کے لیے، اور چھ مہینے بعد آپ کے لیے، پہیلی ہے۔ انڈرسکور سستے ہیں، اور اضافی الفاظ بھی۔ جملے کی طرح پڑھا جانے والا لمبا نام اگلے شخص کے لیے اس چھوٹے نام سے بہتر تحفہ ہے جسے تشریح چاہیے۔
واحد اور جمع میں یکسانیت رکھیے
فیصلہ کیجیے کہ جدول واحد میں نام پاتے ہیں، customer، یا جمع میں، customers، اور اس پر قائم رہیے۔ رواج یکسانیت سے کم اہم ہے۔ snake_case میں بدلا گیا فقرہ وہی تعداد رکھتا ہے جو آپ نے دی۔
جب مدد ملے تو سابقہ لگائیے
بڑے اسکیما میں مختصر سابقہ متعلقہ ناموں کو گروپ کرتا ہے: billing_address، billing_city، billing_country۔ سابقے کے ساتھ فقرہ ٹائپ کرنا اور تبدیل کرنا یکساں نتائج دیتا ہے، اور حروف تہجی کی فہرست پھر خود گروپ ہو جاتی ہے۔
ناموں کو اپنانے سے پہلے آزمائیے
نام کے اسکیما یا API میں جانے سے پہلے اسے ان جگہوں پر آزمائیے جہاں وہ ظاہر ہوگا: کوئری، متغیر، فائلوں کی فہرست۔ اگر تینوں میں فطری پڑھا جائے تو وہ کام آئے گا۔ اگر بے ڈھنگا لگے تو فقرے کو چھوٹا کیجیے یا دوبارہ لکھیے اور متن کو دوبارہ snake_case میں تبدیل کیجیے۔ شروع میں ایک منٹ کی آزمائش بعد میں سینکڑوں فائلوں میں نام بدلنے سے بچاتی ہے۔
ایک ہی سطر ساتوں تحریروں میں
شکلوں کا جدول
کنورٹر کے نیچے جدول مثال کی سطر کو ان ساتوں شکلوں میں دکھاتا ہے جو سائٹ پیش کرتی ہے: بڑے حروف، چھوٹے حروف، Title Case، snake_case، kebab-case، camelCase اور URL سلگ۔ یہ دیکھنے کا تیز طریقہ ہے کہ وہی الفاظ ہر ایک میں کیسے لگتے ہیں۔
یہ شکلیں کہاں سے آئیں
دو حروف تہجی
بڑے اور چھوٹے حروف کبھی دو مختلف حروف تہجی تھے۔ بڑے حروف رومی ہیں، پتھر میں چھینی سے تراشے گئے؛ چھوٹے حروف Carolingian minuscule کی اولاد ہیں، جو پرچمنٹ پر تیزی سے چلتے قلم سے ڈھلے۔ چھاپنے والے دونوں کو الگ خانوں میں رکھتے تھے، اوپر کا خانہ اور نیچے کا خانہ، اور خانے ختم ہونے کے بہت بعد تک نام اٹکے رہے۔
خالی جگہ کے بغیر نام
پروگرامنگ کی شکلیں کہیں زیادہ نئی ہیں اور ایک مسئلہ حل کرنے کے لیے ایجاد ہوئیں: نام میں خالی جگہ نہیں ہو سکتی۔ snake_case ابتدائی C سے نکلا، camelCase Smalltalk سے، kebab-case Lisp سے، اور URL سلگ اس ضرورت سے کہ انسانی عنوان کو ایسے پتے میں رکھا جائے جہاں خالی جگہ اور لہجے کے نشان کی اجازت نہیں۔ انڈرسکور اس وقت کے کی بورڈز پر آسان حرف تھا، اور یہ لکیر پر بیٹھی خالی جگہ جیسا لگتا ہے۔
متن کو snake_case میں تبدیل کرتے وقت جال
نام کا ہندسے سے شروع ہونا
بیشتر زبانیں اور ڈیٹا بیس نمبر سے شروع ہونے والے نام کو رد کرتے ہیں۔ اگر فقرہ ایک سے شروع ہو تو آگے حرف یا لفظ جوڑیے۔
محفوظ الفاظ کے سنبھالے جانے کی توقع
class یا order جیسا فقرہ آپ کی زبان یا SQL میں محفوظ لفظ ہو سکتا ہے۔ صفحہ نہیں جانتا، اور آپ کو جانچنا ہوگا۔
مخففات
camelCase نام کے اندر مخفف، جیسے parseHTMLString، قاعدے کے لحاظ سے parse_h_t_m_l_string یا parse_html_string میں کٹ سکتا ہے۔ جانچیے کہ نتیجہ وہی ہے جو آپ چاہتے ہیں۔
بہت لمبے نام
ڈیٹا بیس اور فائل سسٹم لمبائی کی حدیں لگاتے ہیں۔ نام بنا ہوا لمبا فقرہ ایک سے ٹکرا سکتا ہے۔ تبدیل کرنے سے پہلے الفاظ چھوٹے کیجیے۔
تبدیلی سے پہلے لوگ جو سوال پوچھتے ہیں
رموزِ اوقاف کا کیا ہوتا ہے؟
انہیں الفاظ کے درمیان حد سمجھا جاتا ہے اور آگے نہیں لے جایا جاتا۔
کیا اعداد رکھے جاتے ہیں؟
جی ہاں، اپنے الگ الفاظ کی طرح، انڈرسکور سے جدا۔
کیا یہ camelCase ان پٹ سنبھالتا ہے؟
جی ہاں۔ لفظ کے اندر بڑا حرف کٹاؤ کا نشان ہے، اس لیے fooBar بن جاتا ہے foo_bar۔
کیا میں اسے دوسری زبانوں کے لیے استعمال کر سکتا ہوں؟
جی ہاں، صفحے کی زبان کے قواعد کے ساتھ۔ خالی جگہ کے بغیر رسم الخط، جیسے چینی اور جاپانی، ایک ہی لفظ کے طور پر لوٹتے ہیں۔
کیا میرا متن اپ لوڈ ہوتا ہے؟
نہیں۔ آپ یہاں جو ٹائپ کرتے ہیں وہ کبھی کہیں نہیں بھیجا جاتا، اس لیے مسودہ، پاس ورڈ یا گاہک کا نام یہاں اتنا ہی محفوظ ہے جتنا ٹیکسٹ ایڈیٹر میں۔
مجھے اس کے بجائے ہائفن کیسے ملیں؟
اس کے ساتھ متن کو kebab-case میں تبدیل کیجیے۔
ایک عملی مثال
فرض کیجیے آپ لائبریری کے لیے چھوٹا ڈیٹا بیس بنا رہے ہیں اور عملے نے آپ کو اپنی اسپریڈ شیٹ سے کالم کے عنوان بھیجے ہیں: Book Title، Author's Last Name، Year Published (YYYY)، ISBN-13۔ آپ ہر ایک کو باری باری تبدیل کرتے ہیں اور book_title، author_s_last_name، year_published_yyyy اور isbn_13 پڑھتے ہیں۔ اپاسٹروف نے مصنف کے کالم کو بے ترتیب بنا دیا، اس لیے آپ اصل کو Author Last Name تک چھوٹا کرتے ہیں اور دوبارہ تبدیل کرتے ہیں: author_last_name۔ سال کا کالم فارمیٹ کے نوٹ کے بغیر زیادہ واضح ہے، اس لیے آپ year_published رکھتے ہیں۔ چار صاف کالم کے نام، ایک منٹ میں لکھے، اور ہر ایک ایسا نام جسے ڈیٹا بیس قبول کرے گا۔
ایک مختصر چیک لسٹ
تبدیلی سے پہلے
فقرہ سادہ الفاظ میں لکھیے، قوسین میں نوٹ کے بغیر۔ جانچیے کہ ہدف انڈرسکور اور لہجے کے نشان قبول کرتا ہے۔
تبدیلی کے دوران
فقرہ چسپاں کیجیے، کٹاؤ دیکھیے اور یقینی بنائیے کہ نام حرف سے شروع ہو۔
تبدیلی کے بعد
لمبائی جانچیے، محفوظ الفاظ کے مقابل جانچیے اور اصل فقرے کا ریکارڈ رکھیے، تاکہ نام کا سراغ اس کے مطلب تک لگایا جا سکے۔
عام غلطیاں
جس متن کو لوگ پڑھیں گے اس کے لیے snake_case استعمال کرنا
یہ ناموں کے لیے ہے، نثر کے لیے نہیں۔
بھول جانا کہ ہدف کیا اجازت دیتا ہے
شروع کے ہندسے، لہجے کے نشان اور لمبائی کی حدیں سسٹموں کے درمیان مختلف ہیں۔
دیکھے بغیر مخففات تبدیل کرنا
ان کے گرد کٹاؤ جانچیے۔
آپ کا متن آپ کے آلے پر رہتا ہے
تبدیلی مقامی طور پر ہوتی ہے۔ آپ کا متن آپ کا اپنا براؤزر سنبھالتا ہے اور کچھ کہیں نہیں بھیجا جاتا۔ بعد میں مٹانے کو کچھ نہیں اور بنانے کو کوئی اکاؤنٹ نہیں۔ متن کو snake_case میں تبدیل کرنے کا یہی سادہ طریقہ ہے۔
خلاصہ
یہاں متن کو snake_case میں تبدیل کرنے کے لیے ایک سطر چسپاں کیجیے اور اسے الفاظ کٹے ہوئے، چھوٹے حروف میں اور انڈرسکور سے جڑے ہوئے واپس پڑھیے۔ جو سطر پہلے ہی camelCase میں لکھی ہو وہ وہاں بھی کٹتی ہے، اس لیے fooBar بن جاتا ہے foo_bar۔ صفحہ رموزِ اوقاف نہیں رکھتا: کوما، نقطے اور ڈیش الفاظ کے درمیان حدود ہیں، آگے لے جانے والے حروف نہیں، جو فائل کے نام یا ڈیٹا بیس کے کالم کے لیے آپ چاہتے ہیں اور نثر کے لیے نہیں۔ الفاظ میں کاٹنے کو حدود چاہییں، اس لیے خالی جگہ کے بغیر لکھی جانے والی چینی اور جاپانی ایک ہی لفظ کے طور پر لوٹتی ہیں۔ چھوٹے حروف میں بدلنا صفحے کی زبان کی پیروی کرتا ہے۔ کچھ اپ لوڈ نہیں ہوتا۔