HandyTools Hub

Textzeilen sortieren

Textzeilen alphabetisch oder numerisch sortieren.

100% clientseitige Verarbeitung

Eingabezeilen: 5

Ausgabezeilen: 0

Sort Text Lines nimmt einen ungeordneten Textblock und gibt dieselben Zeilen in einer gewählten Reihenfolge zurück. Das Tool unterstützt drei Sortiermodi mit jeweils aufsteigender oder absteigender Richtung und läuft vollständig im Browser, sodass das Einfügen einer Kundenliste oder einer Spalte interner IDs die Daten nirgendwohin sendet.

Verwendung

  1. Fügen Sie Ihren Text in das Eingabefeld ein, einen Eintrag pro Zeile.
  2. Wählen Sie einen Modus: alphabetisch, numerisch oder nach Länge.
  3. Wählen Sie eine Richtung: aufsteigend oder absteigend.
  4. Passen Sie die Optionen für Groß-/Kleinschreibung, Leerraum und leere Zeilen an, falls die Standardwerte nicht passen.
  5. Kopieren Sie die sortierte Ausgabe aus dem Ergebnisbereich.

Zeilenenden werden zuerst normalisiert, eine Datei mit Windows-CRLF- und eine mit Unix-LF-Zeilen verhalten sich also identisch.

Die drei Sortiermodi

Alphabetisch vergleicht Zeilen mit localeCompare, das Locale-bewusst und standardmäßig unabhängig von der Groß-/Kleinschreibung arbeitet. Das ist nicht dasselbe wie das Sortieren nach rohem Zeichencode: Akzentbuchstaben, Satzzeichen und Groß-/Kleinschreibung werden so geordnet, wie es ein Leser der aktiven Locale erwartet.

Numerisch liest die führende Zahl jeder Zeile mit parseFloat und sortiert nach Wert. Zeilen ohne führende Zahl erhalten einen Sortierwert von unendlich, stehen aufsteigend also unten und schwimmen absteigend nach oben.

Nach Länge sortiert nach der Zeichenzahl der getrimmten Zeile, was praktisch ist, um Ausreißer in einer Liste von Keywords oder Bildunterschriften zu finden.

Praxisbeispiele

Alphabetisch, aufsteigend, Groß-/Kleinschreibung ignorierend:

banana
Apple
cherry

wird zu

Apple
banana
cherry

Numerisch, aufsteigend:

100
7
42

wird zu 7, 42, 100. Beachten Sie, dass der alphabetische Modus 100, 42, 7 liefern würde, weil das Zeichen 1 vor 4 und 7 sortiert.

Nach Länge, aufsteigend:

fig
apple
kiwi

wird zu fig (3), kiwi (4), apple (5).

Numerisch mit gemischten Zeilen:

3 cats
12 dogs
no number here

wird zu 3 cats, 12 dogs, dann no number here. Die dritte Zeile hat keine führende Ziffer, gilt als unendlich und bleibt am Ende.

Optionen, die das Ergebnis verändern

OptionStandardWirkung bei Änderung
RichtungAufsteigendKehrt den Vergleich um, also Z-A, größte zu kleinste oder längste zuerst
Groß-/KleinschreibungAusBehandelt Apple und apple als verschiedene Schlüssel
Leerraum trimmenEinWenn aus, zählen führende Leerzeichen zur Länge und beeinflussen Vergleiche
Leere Zeilen entfernenEinWenn aus, bleiben Leerzeilen erhalten und werden als leere Zeichenfolgen ganz oben einsortiert

Weil das Trimmen standardmäßig aktiv ist, wird eine Zeile kiwi mit 4 Zeichen gemessen, nicht mit 7. Das Abschalten verändert sowohl die Längenrangfolge als auch jeden alphabetischen Vergleich, an dem Einrückung beteiligt war.

Häufige Fehler

  • Erwarten, dass Item 42 als 42 sortiert. Tut es nicht; das Präfix verdeckt die Zahl. Stellen Sie die Zahl nach vorn oder entfernen Sie das Präfix.
  • Vergessen, dass Leerzeilen verschwinden. Wenn Sie Abstände zwischen Gruppen bewahren wollen, schalten Sie das Entfernen leerer Zeilen ab.
  • Numerische Formate mischen. 1,000, 1.5 und 1 000 werden nicht so gelesen, wie Sie es vielleicht erwarten, und Einträge, die nicht gelesen werden können, sinken stillschweigend ans Ende.
  • Codepoint-Reihenfolge annehmen. Der alphabetische Modus nutzt Locale-Sortierung, Satzzeichen und Groß-/Kleinschreibung landen also nicht dort, wo ein reiner ASCII-Vergleich sie platzieren würde.
  • Die gemeldete Zeilenzahl übersehen. Sie spiegelt den Stand nach dem Entfernen wider und ist eine nützliche Kontrolle, dass nichts unerwartet verloren ging.

Zahlen in echten Daten sortieren

Der numerische Modus ist nur so gut, wie es parseFloat lesen kann, und diese Funktion stoppt beim ersten Zeichen, das sie nicht in eine Zahl aufnehmen kann. Die praktischen Folgen sind es wert, gekannt zu werden, bevor Sie einer Sortierung vertrauen:

ZeileparseFloat liestSortiert als
3 cats33
-12-12-12
2.52.52.5
1e310001000
1,00011
$5.99(schlägt fehl)infinity
v2(schlägt fehl)infinity
2.102.12.1

Die letzte Zeile ist die Falle für Softwareteams. Semantische Versionszeichenfolgen wie 2.10 und 2.9 sehen beide numerisch aus, aber der Parser liest nur die erste Fließkommazahl, 2.10 wird zu 2.1 und sortiert unter 2.9. Zerlegen Sie für Versionsnummern die Bestandteile und sortieren Sie jedes Feld, oder füllen Sie sie mit Nullen zu 2.10 gegenüber 2.09 auf, damit eine einfache Sortierung zufällig funktioniert.

Praktische Tipps

  • Wenn Ihre Liste wie Item 42 aussieht, ordnen Sie sie vor dem Sortieren zu 42 Item um, oder verschieben Sie die Zahl per Suchen-und-Ersetzen nach vorn.
  • Doppelte Zeilen überstehen die Sortierung und liegen wegen der Stabilität nebeneinander. Entfernen Sie Duplikate zuerst, wenn Sie eine saubere Liste wollen.
  • Der alphabetische Modus ohne Beachtung der Groß-/Kleinschreibung ist die richtige Voreinstellung für Namen und Wörter. Schalten Sie Sensitivität nur ein, wenn die Unterscheidung wirklich zählt, etwa beim Sortieren von Programmbezeichnern.
  • Das Trimmen ist standardmäßig aktiv, was meist gewünscht ist; schalten Sie es ab, wenn Einrückung bedeutsam ist, etwa beim Sortieren von Code oder verschachtelten Gliederungen.
  • Vergleichen Sie die gemeldete Zeilenzahl mit Ihrer Eingabe, um stillschweigend als leer oder nur aus Leerraum bestehend entfernte Zeilen zu entdecken.

Praxisnahe Szenarien

  • Eine exportierte CSV-Spalte mit Namen oder IDs vor dem Re-Import bereinigen.
  • Eine Keyword-Liste nach Länge sortieren, um die kürzesten und am leichtesten zu treffenden Suchbegriffe zu sehen.
  • Nummerierte Log-Zeilen oder Testfälle ordnen, damit die Ausgabe lesbar wird.
  • Eine Bibliografie oder ein Glossar vorbereiten, in der Einträge unabhängig von der Groß-/Kleinschreibung alphabetisch sein müssen.
  • Bewertungen oder Maße nach Wert reihen, wenn die Zahlen am Anfang jeder Zeile stehen.

Verwandte Tools

Häufig gestellte Fragen

Findet die numerische Sortierung eine Zahl irgendwo in der Zeile?

Nein. Sie ruft parseFloat auf die ganze Zeile auf, und das liest eine Zahl nur ganz am Anfang. Eine Zeile wie 42 items wird als 42 sortiert, aber Item 42 hat keine führende Zahl, wird also als nicht numerisch behandelt und erhält den Wert unendlich. Aufsteigend sinken solche Zeilen ans Ende, absteigend steigen sie nach oben. Stellen Sie die Zahl nach vorn oder entfernen Sie das Präfix vor dem Sortieren.

Ist die alphabetische Sortierung groß-/kleinschreibungssensitiv?

Standardmäßig nicht. Der alphabetische Modus wandelt beide Zeilen vor dem Vergleich in Kleinbuchstaben um, sodass Apple, apple und APPLE als gleiche Schlüssel gelten. Die Option zur Groß-/Kleinschreibung vergleicht die Originalzeichenfolgen und trennt sie dadurch; die Reihenfolge hängt dann von den Sortierregeln der aktiven Locale ab.

Was passiert mit leeren Zeilen und führenden Leerzeichen?

Standardmäßig wird jede Zeile getrimmt und leere Zeilen werden vor dem Sortieren entfernt. Ein abschließender Zeilenumbruch oder eine Zeile mit nur Leerzeichen verschwindet also aus der Ausgabe, und die gemeldete Zeilenzahl kann kleiner sein als die eingefügte. Beide Verhaltensweisen lassen sich abschalten.

Kann ich Werte wie 1,000 oder $5.99 sortieren?

Nicht zuverlässig. parseFloat stoppt beim ersten Zeichen, das nicht zu einer Zahl gehört, deshalb wird 1,000 als 1 gelesen und $5.99 als Nicht-Zahl erkannt und ans Ende geschoben. Wandeln Sie solche Werte zuerst in schlichte Zahlen wie 1000 und 5.99 um, sonst stimmt die Reihenfolge nicht.

Bleiben gleiche Zeilen in ihrer ursprünglichen Reihenfolge?

Ja. Die Sortierung ist stabil, wenn zwei Zeilen gleich sind — etwa Apple und apple im standardmäßig groß-/kleinschreibungsunabhängigen Modus — bleiben sie in der eingefügten Reihenfolge. Nicht numerische Zeilen im numerischen Modus sind ein Sonderfall: Sie sind alle gleich, behalten also ebenfalls ihre Eingabereihenfolge am Ende der Liste.

Was zählt der Längenmodus genau?

Die Anzahl der Zeichen jeder getrimmten Zeile, einschließlich der Leerzeichen innerhalb der Zeile. fig ergibt 3, kiwi ergibt 4 und apple ergibt 5, aufsteigend nach Länge sortiert also genau in dieser Reihenfolge. Es werden keine Wörter oder Bytes gezählt, eine Zeile mit fünf CJK-Zeichen zählt also als 5, obwohl sie in UTF-8 15 Bytes belegen kann.

Geprüft vom HandyTools-Hub-Team · Zuletzt aktualisiert