Satır Sıralayıcı

Satırları alfabetik olarak, uzunluğa göre, ters veya rastgele sırala

Örnek dene

Giriş satırları

Sıralanmış satırlar

Yerel olarak çalışır · Gizli bilgi yapıştırmak güvenlidir
Sıralanmış satırlar burada görünecek…

Satır Sıralama Nedir?

Satır sıralama, bir metin bloğundaki satırları belirli bir kurala göre yeniden düzenleme işlemidir: alfabetik sıra, ters sıra, satır uzunluğu veya rastgele karıştırma. Satırları çevrimiçi sıralamak, günlük dosyaları, CSV verileri, yapılandırma listeleri veya sıranın önem taşıdığı düz metin içeriklerle çalışırken sık karşılaşılan bir görevdir. İşlem, metni yeni satır karakterlerine göre böler, elde edilen diziye bir karşılaştırma işlevi uygular ve sıralanmış satırları tekrar birleştirir.

Çoğu programlama dili, karakterleri Unicode kod noktalarına göre karşılaştıran sözlüksel (lexicographic) sıralamayı varsayılan olarak kullanır. Bu, büyük harflerin küçük harflerden önce gelmesi anlamına gelir ("Muz" büyük M ile "elma"dan önce gelir) ve rakamlar harflerden önce sıralanır. Doğal sıralama veya harmanlama olarak da adlandırılan yerel ayara duyarlı sıralama, dile özgü kurallar uygulayarak bunu düzeltir. JavaScript'in localeCompare() işlevi, Python'ın locale.strxfrm() işlevi ve LC_COLLATE ile kullanılan POSIX sort komutu yerel ayara duyarlı sıralama sağlar.

Uzunluğa göre sıralama, bir listedeki en kısa veya en uzun girişleri bulmak, günlük çıktısındaki aykırı değerleri tespit etmek ya da öğeleri karmaşıklıklarına göre düzenlemek için kullanışlıdır. Ters sıralama, mevcut satır sırasını alfabetik bir yeniden düzenleme yapmadan tersine çevirir; bu, Z-A alfabetik sıralamasından farklıdır. Rastgele karıştırma, her satıra rastgele bir sıralama anahtarı atayarak her çalıştırmada farklı bir sıra üretir. Modlar arasında geçiş yapmak, her defasında ayrı bir betik yazmaktan çok daha hızlıdır.

Bu Satır Sıralayıcıyı Neden Kullanmalısınız?

Metninizi yapıştırın, bir sıralama modu seçin ve sonucu anında alın. Komut satırı kurulumu yok, betik dosyası yok, paket yüklemesi yok.

Anında Sıralama
Sonuçlar yazarken veya yapıştırırken görünür. Altı sıralama modu arasında geçiş yapın ve hiçbir şeyi yeniden çalıştırmadan çıktıları karşılaştırın.
🔒
Gizlilik Öncelikli İşlem
Tüm sıralama işlemleri JavaScript kullanılarak tarayıcınızda gerçekleşir. Metniniz cihazınızda kalır; hiçbir sunucuya yüklenmez ve kayıt altına alınmaz.
🔀
Altı Sıralama Modu
A-Z, Z-A, en kısa önce, en uzun önce, ters sıra ve rastgele karıştırma. Tek bir girişle en yaygın satır düzenleme görevlerini karşılayın.
📋
Hesap Gerekmez
Sayfayı açın ve sıralamaya başlayın. Kayıt yok, eklenti yok, masaüstü uygulaması yok. Modern tarayıcısı olan her cihazda çalışır.

Satır Sıralayıcı Kullanım Alanları

Ön Uç Geliştirme
CSS sınıf listelerini, içe aktarma ifadelerini veya i18n çeviri anahtarlarını alfabetik olarak sıralayın. Tutarlı sıralama, sürüm kontrolünde birleştirme çakışmalarını azaltır ve kod incelemelerini hızlandırır.
Arka Uç Mühendisliği
package.json, requirements.txt veya go.mod dosyalarındaki bağımlılık listelerini işleme almadan önce düzenleyin. CREATE TABLE ifadeleri oluştururken veya şema farklarını karşılaştırırken SQL sütun adlarını sıralayın.
DevOps ve Altyapı
.env dosyalarındaki ortam değişkeni adlarını, Kubernetes ConfigMap girişlerini veya Terraform değişken bloklarını sıralayın. Alfabetik sıralama, inceleme sırasında yinelenen ve eksik değerleri fark etmenizi kolaylaştırır.
Kalite Güvence ve Test Otomasyonu
Hataları hızlıca tespit etmek için test çıktı günlüklerini zaman damgasına veya mesaja göre sıralayın. Uygulama davranışının ekleme sırasına bağlı olmadığını doğrulamak için test giriş verilerini rastgele karıştırın.
Veri Mühendisliği
Şema geçiş betikleri yazmadan önce CSV başlıklarını veya sütun listelerini düzenleyin. Veri işlem hattındaki kesik satırları veya olağandışı uzun değerleri bulmak için örnek veri satırlarını uzunluğa göre sıralayın.
Öğrenciler ve Öğrenenler
Kelime listelerini, kaynakça girişlerini veya ders notlarını alfabetik olarak sıralayın. Ayrı bir uygulama yüklemeden rastgele sıralı tekrar oturumları için kart satırlarını karıştırın.

Satır Sıralama Modları Referansı

Bu araç altı sıralama modunu destekler. Aşağıdaki tablo her modun açıklamasını, kullandığı karşılaştırma yöntemini ve şu giriş listesi için örnek sonucu göstermektedir: elma, muz, kiraz, hurma, incir.

ModAçıklamaJS YöntemiÖrnek Çıktı
A-ZAlphabetical ascendinglocaleCompare()apple, banana, cherry
Z-AAlphabetical descendinglocaleCompare() reversedcherry, banana, apple
Length (short)Shortest line firsta.length - b.lengthfig, date, apple, banana
Length (long)Longest line firstb.length - a.lengthbanana, apple, date, fig
ReverseFlip line order, no reorderingArray.reverse()Last line becomes first
RandomRandomized comparator (biased)Math.random() - 0.5Different every run

Arka Planda Sıralama Algoritmaları

JavaScript'te Array.sort() çağırdığınızda, V8 motoru (Chrome, Node.js) 2019'dan bu yana Timsort kullanmaktadır. Diğer çalışma zamanları farklı algoritmalar kullanır. Aşağıdaki tablo, programlama dili standart kütüphanelerinde en yaygın kullanılan sıralama algoritmalarını karşılaştırmaktadır. Hepsi, bu aracın satır sıralama yüklerini tipik girdiler (100.000 satırın altı) için bir milisaniyenin altında gerçekleştirir.

AlgoritmaKullananlarZamanNotlar
TimsortPython, Java (Arrays.sort)O(n log n)Stable, fast on partially sorted data
QuicksortC stdlib, V8 (older)O(n log n)In-place, unstable by default
Merge sortMost stable-sort implementationsO(n log n)Stable, predictable, uses extra memory
IntrosortC++ std::sort, .NETO(n log n)Hybrid: quicksort + heapsort fallback
Radix sortFixed-length keys, integersO(nk)Non-comparative, linear for short keys

Kod Örnekleri

JavaScript, Python, Go ve komut satırında satırları programatik olarak sıralayın. Her örnek alfabetik, uzunluk tabanlı ve ters sıralamayı kapsamaktadır.

JavaScript
const text = `banana
apple
cherry
date
fig`

// Sort A-Z (locale-aware)
const az = text.split('\n').sort((a, b) => a.localeCompare(b)).join('\n')
// → "apple\nbanana\ncherry\ndate\nfig"

// Sort by line length, shortest first
const byLen = text.split('\n').sort((a, b) => a.length - b.length).join('\n')
// → "fig\ndate\napple\nbanana\ncherry"

// Reverse line order (no alphabetical sorting)
const reversed = text.split('\n').reverse().join('\n')
// → "fig\ndate\ncherry\napple\nbanana"

// Remove duplicates and sort
const unique = [...new Set(text.split('\n'))].sort().join('\n')
Python
text = """banana
apple
cherry
date
fig"""

lines = text.splitlines()

# Sort A-Z (case-insensitive)
az = sorted(lines, key=str.lower)
# → ['apple', 'banana', 'cherry', 'date', 'fig']

# Sort by line length
by_len = sorted(lines, key=len)
# → ['fig', 'date', 'apple', 'banana', 'cherry']

# Reverse original order
rev = lines[::-1]
# → ['fig', 'date', 'cherry', 'apple', 'banana']

# Shuffle randomly
import random
random.shuffle(lines)  # modifies in place
Go
package main

import (
	"fmt"
	"sort"
	"strings"
)

func main() {
	text := "banana\napple\ncherry\ndate\nfig"
	lines := strings.Split(text, "\n")

	// Sort A-Z
	sort.Strings(lines)
	fmt.Println(strings.Join(lines, "\n"))
	// → apple\nbanana\ncherry\ndate\nfig

	// Sort by length
	sort.Slice(lines, func(i, j int) bool {
		return len(lines[i]) < len(lines[j])
	})
	fmt.Println(strings.Join(lines, "\n"))
	// → fig\ndate\napple\nbanana\ncherry
}
CLI (bash)
# Sort lines A-Z
sort file.txt

# Sort lines Z-A (reverse)
sort -r file.txt

# Sort numerically (first field)
sort -n data.txt

# Sort by line length (awk + sort + cut)
awk '{ print length, $0 }' file.txt | sort -n | cut -d' ' -f2-

# Shuffle lines randomly
shuf file.txt          # GNU coreutils
sort -R file.txt       # alternative (not truly uniform)

# Sort and remove duplicates
sort -u file.txt

Sık Sorulan Sorular

A-Z sıralama ile doğal sıralama arasındaki fark nedir?
A-Z sıralama (sözlüksel), karakterleri Unicode kod noktasına göre karşılaştırır. Bu, '1' karakterinin '2'den düşük bir kod noktasına sahip olması nedeniyle "öğe10"un "öğe2"den önce gelmesi anlamına gelir. Doğal sıralama, gömülü sayıları sayısal değer olarak değerlendirir; dolayısıyla "öğe2", "öğe10"dan önce gelir. Bu araç, aksan işaretli karakterleri doğru biçimde işleyen ancak sayılarda doğal sıralama yapmayan localeCompare() ile yerel ayara duyarlı sözlüksel sıralama kullanır.
Satırları sıraladığımda metnim sunucuya gönderiliyor mu?
Hayır. Tüm sıralama, JavaScript'in Array.sort() yöntemi kullanılarak tarayıcınızda gerçekleşir. Metin cihazınızdan hiçbir zaman ayrılmaz. Bunu doğrulamak için DevTools'da Ağ sekmesini açın ve metin yapıştırıp sıraladığınızda hiçbir istek gönderilmediğini onaylayın.
Bu araç kaç satırı işleyebilir?
Araç on binlerce satırla sorunsuz çalışır. V8'deki JavaScript Timsort uygulaması, modern donanımda 100.000 satırı 100 milisaniyenin altında işler. Birkaç megabaytı aşan dosyalar için, disk tabanlı birleştirme sıralaması ve çoklu iş parçacığı kullanabilen Unix sort komutu gibi bir komut satırı aracı daha verimlidir.
Büyük/küçük harf duyarsız sıralama nasıl çalışır?
Bu araç, String.localeCompare() işlevini { sensitivity: 'base' } seçeneğiyle kullanır. Bu, "Elma" ve "elma"nın ayrı gruplara değil, birlikte sıralanmasını sağlayarak karşılaştırmayı büyük/küçük harf duyarsız hale getirir. Varsayılan olarak localeCompare() büyük/küçük harfe duyarlıdır; büyük/küçük harf duyarsız davranış için bu seçenek açıkça belirtilmelidir. Büyük harflerin önce geldiği katı büyük/küçük harf duyarlı sıralama için -f bayrağı olmadan Unix sort komutunu kullanın.
Satırları sıralarken aynı anda yinelenenleri kaldırabilir miyim?
Bu araç satırları sıralar ancak yinelenenleri kaldırmaz. Yinelenen satırları kaldırmak için aynı kategorideki Yinelenen Satır Kaldırıcı aracını kullanın. Metninizi önce burada sıralayabilir, ardından sonucu temiz, benzersiz ve sıralı bir liste elde etmek için yinelenen kaldırıcıya yapıştırabilirsiniz.
Ters sıralama ile Z-A sıralama arasındaki fark nedir?
Ters sıralama, özgün satır sırasını tersine çevirir: son satır ilk, sondan bir önceki satır ikinci olur ve bu şekilde devam eder. Hiçbir alfabetik karşılaştırma yapılmaz. Z-A sıralama ise satırları özgün konumlarından bağımsız olarak azalan alfabetik sıraya göre düzenler. Girişiniz zaten A-Z sıralamasındaysa ters ve Z-A aynı sonucu üretir; ancak sıralanmamış giriş için sonuçlar farklı olur.
Satırları belirli bir sütuna veya alana göre nasıl sırlayabilirim?
Bu araç satır içeriğinin tamamına göre sıralar. Belirli bir sütuna göre sıralamak için (örneğin sekmeyle ayrılmış bir dosyanın ikinci alanı) Unix sort komutunu -k bayrağıyla kullanın: sort -t$'\t' -k2,2 dosya.txt. Python'da her satırı bölün ve bir anahtar işlevi kullanın: sorted(satirlar, key=lambda x: x.split('\t')[1]).