Metin büyük/küçük harf dönüşümü, bir metnin harf büyüklüğünü veya kelime ayırma biçimini değiştirme işlemidir. Bir harf dönüştürücü, "merhaba dünya" gibi bir girişi alır ve bunu BÜYÜK HARF, küçük harf, Başlık Durumu, camelCase, snake_case, kebab-case veya başka bir biçime dönüştürür. Basit ASCII metinler için dönüşüm doğrudandır; ancak kısaltmalar ("XMLParser"), yerel kural farklılıkları (Türkçe noktalı İ harfi) ve karma yazı sistemleri içeren dizilerde özel durumlar ortaya çıkar.
Programlama dilleri, dosya sistemleri ve stil rehberleri her biri kendi adlandırma kurallarını uygular. JavaScript değişkenleri genellikle camelCase kullanır. Python fonksiyonları ve değişkenleri, PEP 8 gereği snake_case kuralını izler. CSS sınıf adları kebab-case kullanır. Veritabanı sütunları ekibe göre farklılık gösterse de snake_case, PostgreSQL ve MySQL'de baskın kuraldır. Bu kurallar arasında elle geçiş yapmak yavaş ve hata eğilimlidir; özellikle onlarca dosyada yeniden adlandırma yapılırken.
Büyük/küçük harf kuralları kodun dışında da önem taşır. Başlık Durumu (Title Case), Chicago Manual of Style ve APA gibi stil rehberlerince tanımlanan kurallara uyar: edatlar, bağlaçlar ve kısa zarflar cümle başında olmadıkça küçük harf kalır. Cümle durumu ise yalnızca ilk kelimeyi ve özel isimleri büyük harfle yazar. Amerikan İngilizcesi yayıncılığı başlıklarda Başlık Durumunu esas alırken, Avrupa ve teknik belgeler genellikle Cümle durumunu benimser.
Bu Harf Dönüştürücüyü Neden Kullanmalısınız?
Herhangi bir metni yapıştırın ve bir VS Code eklentisi kurmadan ya da tek seferlik bir betik yazmadan dokuz farklı harf biçimine anında dönüştürün.
⚡
Anında Dönüşüm
Bir harf biçimi seçin ve sonucu hemen görün. Sunucuya gidiş-dönüş yok, bekleme yok. Çıktıları yan yana karşılaştırmak için biçimler arasında geçiş yapın.
🔒
Gizlilik Öncelikli İşlem
Tüm dönüşümler JavaScript kullanılarak tarayıcınızda gerçekleşir. Metniniz cihazınızda kalır. Hiçbir şey sunucuya gönderilmez veya herhangi bir yerde saklanmaz.
🔄
Dokuz Biçim Tek Araçta
BÜYÜK HARF, küçük harf, Başlık Durumu, Cümle durumu, camelCase, PascalCase, snake_case, kebab-case ve CONSTANT_CASE. Tek bir giriş, tüm yaygın kuralları karşılar.
🌍
Hesap Gerekmez
Sayfayı açın ve dönüştürmeye başlayın. Kayıt yok, tarayıcı eklentisi yok, masaüstü kurulumu yok. Modern tarayıcısı olan her cihazda çalışır.
Harf Dönüştürücü Kullanım Alanları
Ön Uç Geliştirme
Bileşen prop adlarını, snake_case API yanıtlarından JavaScript nesneleri için camelCase'e dönüştürün. CSS sınıflarını, BEM veya utility-first adlandırma sistemine geçiş yaparken camelCase'den kebab-case'e aktarın.
Arka Uç API Tasarımı
Veritabanı sütunlarını (snake_case) JSON yanıt anahtarlarına (camelCase) eşlerken alan adlarını kurallara göre çevirin. Serileştirme katmanlarının beklenen çıktı biçimini üretip üretmediğini doğrulayın.
DevOps ve Altyapı
Açıklayıcı ifadelerden CONSTANT_CASE ortam değişkeni adları oluşturun. Terraform kaynak adlarını, ekip stil rehberleriyle uyum sağlarken snake_case ile kebab-case arasında dönüştürün.
QA ve Test Otomasyonu
Test fikstür verilerini doğru biçimde adlandırılmış alan adlarıyla hazırlayın. API sözleşmeleri ile istemci beklentileri arasındaki büyük/küçük harf uyumsuzluklarını üretim ortamına ulaşmadan tespit edin.
Veri Mühendisliği
CSV veya Excel dosyalarını bir veritabanına aktarırken sütun başlıklarını normalleştirin. "First Name" gibi karma büyüklükteki başlıkları, tutarlı şema tasarımı için "first_name" biçiminde snake_case sütunlara dönüştürün.
Teknik Yazarlık ve Belgelendirme
Belgelerdeki kod referanslarını doğru büyüklükle biçimlendirin. Düz dil açıklamalarını, teknik özelliklerde tutarlılık sağlamak amacıyla PascalCase sınıf adlarına veya kebab-case URL slug'larına dönüştürün.
Büyük/Küçük Harf Kuralı Referansı
Her adlandırma kuralının büyük harf kullanımı ve kelime ayırma için belirli kuralları vardır. Aşağıdaki tablo bu aracın desteklediği dokuz biçimi, "the quick brown fox" giriş ifadesiyle göstermektedir.
Biçim
Kural
Örnek
UPPERCASE
Every letter capitalized
THE QUICK BROWN FOX
lowercase
Every letter lowercased
the quick brown fox
Title Case
First letter of each word capitalized
The Quick Brown Fox
Sentence case
First letter of each sentence capitalized
The quick brown fox
camelCase
No separators, first word lowercase
theQuickBrownFox
PascalCase
No separators, every word capitalized
TheQuickBrownFox
snake_case
Words joined by underscores, all lowercase
the_quick_brown_fox
kebab-case
Words joined by hyphens, all lowercase
the-quick-brown-fox
CONSTANT_CASE
Words joined by underscores, all uppercase
THE_QUICK_BROWN_FOX
camelCase, snake_case ve kebab-case Karşılaştırması
Bu üç kural yazılım geliştirmede baskın konumdadır; ancak her biri farklı bir ekosisteme aittir. Yanlış olanı seçmek linter hatalarına, API sözleşme ihlallerine veya tutarsız kod tabanlarına yol açar.
camelCase
JavaScript ve TypeScript değişkenleri, fonksiyon adları ve nesne anahtarları için standarttır. Java ve C# yerel değişkenler ve metot parametreleri için camelCase kullanır. JavaScript istemcileri için tasarlanmış JSON API'leri genellikle camelCase anahtarlar kullanır. İlk kelime küçük harfle başlar; sonraki her kelime büyük harfle başlar.
snake_case
Python (PEP 8), Ruby, Rust ve çoğu SQL veritabanı için varsayılan kuraldır. C standart kütüphane fonksiyonları da bu kalıbı izler. Kelimeler alt çizgiyle ayrılır, tamamı küçük harftir. CONSTANT_CASE (tamamı büyük harf, alt çizgiyle ayrılmış) ise sabitler ve ortam değişkenleri için kullanılan türdür.
kebab-case
CSS sınıf adları, HTML nitelikleri, URL slug'ları ve CLI bayrak adları (--output-dir) için standarttır. Lisp ve Clojure dillerinde yaygındır. Kelimeler tire ile ayrılır, tamamı küçük harftir. Çoğu programlama dili tanımlayıcılarda tire kullanamaz; bu nedenle kebab-case dizeler, dosya adları ve işaretleme diliyle sınırlıdır.
Kod Örnekleri
Büyük/küçük harf kuralları arasında programatik olarak nasıl dönüşüm yapılacağı. Her örnek en yaygın dönüşümleri kapsar: camelCase'den snake_case'e, snake_case'den camelCase'e ve temel büyük/küçük harf ile başlık durumu dönüşümleri.
JavaScript
// camelCase → snake_case
function toSnakeCase(str) {
return str
.replace(/([a-z])([A-Z])/g, '$1_$2')
.replace(/[\s-]+/g, '_')
.toLowerCase()
}
toSnakeCase('myVariableName') // → "my_variable_name"
toSnakeCase('kebab-case-str') // → "kebab_case_str"
// snake_case → camelCase
function toCamelCase(str) {
return str
.toLowerCase()
.replace(/[_-](\w)/g, (_, c) => c.toUpperCase())
}
toCamelCase('my_variable_name') // → "myVariableName"
// Title Case
function toTitleCase(str) {
return str.replace(/\w\S*/g, w =>
w.charAt(0).toUpperCase() + w.slice(1).toLowerCase()
)
}
toTitleCase('the quick brown fox') // → "The Quick Brown Fox"
Python
import re
text = "the quick brown fox"
# UPPERCASE / lowercase
text.upper() # → "THE QUICK BROWN FOX"
text.lower() # → "the quick brown fox"
# Title Case
text.title() # → "The Quick Brown Fox"
# camelCase
def to_camel(s):
words = re.split(r'[\s_-]+', s)
return words[0].lower() + ''.join(w.capitalize() for w in words[1:])
to_camel("my_variable_name") # → "myVariableName"
# snake_case from camelCase
def to_snake(s):
return re.sub(r'([a-z])([A-Z])', r'\1_\2', s).lower()
to_snake("myVariableName") # → "my_variable_name"
# kebab-case
def to_kebab(s):
return re.sub(r'([a-z])([A-Z])', r'\1-\2', s).replace('_', '-').lower()
to_kebab("myVariableName") # → "my-variable-name"
camelCase küçük harfle başlar (myVariable), PascalCase ise büyük harfle (MyVariable). JavaScript'te camelCase değişkenler ve fonksiyonlar için kullanılır; PascalCase sınıf adları ve React bileşen adları için kullanılır. C# genel metotlar ve özellikler için PascalCase kullanır. İkisi arasındaki tek yapısal fark ilk karakterdir.
JavaScript'te camelCase nasıl snake_case'e dönüştürülür?
Her büyük harfin önüne bir alt çizgi eklemek için regex kullanın, ardından sonucu küçük harfe çevirin: str.replace(/([a-z])([A-Z])/g, '$1_$2').toLowerCase(). Bu yöntem standart camelCase için çalışır. "XMLParser" gibi ardışık büyük harf içeren diziler için büyük harf gruplarını doğru şekilde bölmek amacıyla ek bir regex adımı gerekir.
Python neden camelCase yerine snake_case kullanır?
2001'de yayımlanan Python'ın resmi stil rehberi PEP 8, fonksiyonlar ve değişkenler için snake_case'i seçmiştir; çünkü Guido van Rossum ve çekirdek ekip bunu tek bakışta daha okunabilir bulmuştur. Binkley ve ark.'nın (2009) araştırması, belirli okuma görevlerinde programcıların snake_case tanımlayıcılarını camelCase'e kıyasla daha hızlı tanıdığını ortaya koymuştur. Bu kural flake8 ve pylint gibi linter'lar tarafından uygulanır.
Başlık Durumu (Title Case) her kelimenin baş harfini büyük yazmakla aynı şey midir?
Basit Başlık Durumu her kelimenin ilk harfini büyük yapar; bu araç da bunu yapar. Resmi Başlık Durumu (AP, Chicago, APA) ek kurallar içerir: edatlar (a, an, the), kısa bağlaçlar (and, but, or) ve kısa zarflar (in, on, at) ilk veya son kelime olmadıkça küçük harf kalır. Resmi başlık biçimlendirmesi, yalnızca karakter düzeyinde dönüşüm değil, sözlük sorgusu gerektirir.
Bu araç Unicode ve Latin dışı yazı sistemlerini işleyebilir mi?
Araç, JavaScript'in yerleşik toUpperCase() ve toLowerCase() metotlarını kullanır; bu metotlar Unicode Standardı'nda (3. Bölüm, Kısım 3.13) tanımlanan Unicode büyük/küçük harf kurallarını izler. Aksanlı karakterler (é'den É'ye), Almanca Eszett (ss'den SS'ye) ve Yunan harfleri doğru şekilde işlenir. Ancak Türkçe büyük/küçük harf kuralları gibi yerel kurallara özgü durumlar (küçük harf i'nin noktalı İ'ye dönüşmesi) tarayıcının yerel ayarına bağlıdır.
CONSTANT_CASE ne için kullanılır?
CONSTANT_CASE (SCREAMING_SNAKE_CASE olarak da bilinir) sabitler ve ortam değişkenleri için kullanılır. JavaScript'te: const MAX_RETRIES = 3. Python'da: MAX_RETRIES = 3 (Python'ın gerçek sabitleri olmadığından bu bir kuraldır). Kabuk betiklerinde: export DATABASE_URL=.... Tamamı büyük harf stili, bir değerin başlangıç atamadan sonra yeniden atanmaması gerektiğini belirtir.
Projem için doğru büyük/küçük harf kuralını nasıl seçerim?
Kullandığınız dil ve çerçevenin baskın kuralını izleyin. JavaScript/TypeScript: değişkenler için camelCase, sınıflar ve bileşenler için PascalCase. Python: fonksiyonlar ve değişkenler için snake_case, sınıflar için PascalCase. CSS: kebab-case. SQL: sütunlar ve tablolar için snake_case. REST API JSON anahtarları: ön uç dilinizle eşleştirin (JS istemcileri için camelCase, Python istemcileri için snake_case). Emin değilseniz proje kökünizdeki linter yapılandırmasına veya .editorconfig dosyasına bakın.