ToolActToolAct

String-Umkehr-Werkzeug

Text-Strings schnell umkehren, mehrere Umkehrmodi unterstützt

Eingabe
Zeichen: 0
Zeilenanzahl: 0
Ausgabe
Zeichen: 0
Zeilenanzahl: 0

Umkehrungsmethode wählen

Was ist String-Umkehrung?

String Reverse kehrt die Reihenfolge von Textzeichen um und erzeugt aus einer Eingabe die rückwärts gelesene Ausgabe. Das wirkt einfach, ist aber bei echter Textverarbeitung interessanter als es klingt: Unicode-Zeichen, Emoji, kombinierende Akzente, Zeilenumbrüche, Leerzeichen und rechts-nach-links-Schriften können anders reagieren als reine ASCII-Buchstaben. Das Werkzeug ist nützlich für kleine Textspiele, Palindrom-Prüfung, Datenexperimente, Debugging von Zeichenketten, Unterricht und das Sichtbarmachen versteckter Leerzeichen oder Endungen. Es ist nicht für kryptografische Verschleierung oder sichere Datenmaskierung geeignet. Wenn Text aus mehreren Codepoints pro sichtbarem Zeichen besteht, sollte das Ergebnis kontrolliert werden. Bei veröffentlichten oder mehrsprachigen Inhalten sollte das Ergebnis wegen Sprache, Zeichensatz, Kontext und Sonderfällen kurz gegengelesen werden.

Anleitung

Grundoperationen

  1. Text zum Umdrehen in das linke Eingabefeld eingeben oder einfügen
  2. Umdrehmodus auswählen (alles umdrehen, Wörter umdrehen usw.)
  3. Rechts wird das umgedrehte Ergebnis automatisch angezeigt
  4. Auf „Kopieren“ klicken, um das Ergebnis zu übernehmen, oder auf „Tauschen“, um es als Eingabe für weitere Operationen zu verwenden

Textverarbeitung

  • Einfachen Text umzudrehen ist unkompliziert, doch Emojis, Kombinationszeichen und Rechts-nach-Links-Schriften können unerwartete visuelle Ergebnisse erzeugen.
  • Bei Code, URLs oder strukturierten Daten nur den gewünschten Abschnitt umdrehen, statt blind den gesamten Text zu verarbeiten.

Anwendungsfälle

Text auf verschiedenen Strukturebenen umkehrenWählen Sie vollständige Zeichenumkehr, Wortreihenfolge-Umkehr, Einzelwort-Umkehr, Zeilen-Umkehr, Zeilenreihenfolge-Umkehr oder Satzreihenfolge-Umkehr. Die Ausgabe aktualisiert sich sofort bei Eingabeänderungen und kann zurück in das Eingabefeld getauscht werden. Die richtige Ebene hält das Ergebnis sinnvoll: Wörter umkehren mischt die Liste, während jedes Wort umkehren jedes Element intakt lässt und nur die Buchstaben vertauscht.
Texttransformationen und Grenzfälle testenDie Modi auf Zeichenebene verwenden die Spread-Syntax, die viele Unicode-Zeichen besser verarbeitet als einfache Byte-Umkehrung. Zeilen- und Wortmodi erhalten verschiedene Teile der Leerzeichen je nach gewählter Transformation, was sie nützlich für schnelle Datenexperimente macht. Das Einfügen schwieriger Eingaben wie leerer Zeilen, doppelter Leerzeichen oder abschließender Tabulatoren zeigt, wie jeder Modus unsichtbare Trennzeichen behandelt.
Spielerische oder diagnostische Textvarianten erstellenKehren Sie Namen, Listen, Sätze oder Logzeilen um für Rätsel, Testdaten, Layout-Prüfungen und manuelle Vergleiche. Zeilen- und Zeichenanzahl auf beiden Feldern helfen zu bestätigen, ob die Transformation die Struktur oder nur die Reihenfolge geändert hat. Die beiden Zahlen sollten bei reiner Umkehrung übereinstimmen, was eine schnelle numerische Prüfung als zuverlässigen Schnelltest macht.
Palindrome einschließlich Emoji-Sequenzen überprüfenFügen Sie einen Ausdruck ein und wechseln Sie zur Zeichenumkehr, um zu prüfen, ob er vorwärts und rückwärts gleich gelesen wird. Der Spread-basierte Ansatz hält mehrcodepunkt-Emojis und kombinierende Akzente als einzelne Einheiten zusammen, sodass eine umgekehrte Regenbogenfahnen-Zeichenkette das Flag korrekt gruppiert. Ein echtes Palindrom sollte nach einmaliger vollständiger Umkehrung wieder in seiner ursprünglichen Form vorliegen – ein schneller Test für Eingaben, die symmetrisch aussehen, aber nicht sind.
Graphem-bewusste Emojis und RTL-Bidi-Text umkehrenBei Eingaben wie '👨‍👩‍👧' (ein Familien-Emoji bestehend aus Mann, ZWJ, Frau, ZWJ, Mädchen) würde eine naive Byte-Umkehrung die Sequenz in defekte Glyphen aufteilen. Dieses Werkzeug iteriert nach Graphem-Clustern, sodass eine umgekehrte Familien-Emoji intakt bleibt, anstatt zu '👧‍👩‍👨' zu werden. Bei arabischen oder hebräischen Eingaben wird die visuelle Rechts-nach-Links-Reihenfolge vom Renderer beibehalten – eine Zeichenumkehrung in den Daten sieht auf dem Bildschirm dennoch umgekehrt aus, also testen Sie das Ergebnis mit der Sprachdarstellung, bevor Sie einen Fehler vermuten.

Technisches Prinzip

Die Umkehrung auf Zeichenebene nutzt die Spread-Syntax: [...str].reverse().join(''). Der Spread-Operator iteriert die Zeichenkette als Folge von Unicode-Codepoints, was auch Zeichen außerhalb der Basic Multilingual Plane korrekt behandelt, die zwei UTF-16-Codeunits belegen (Surrogate-Paare). Die einfachere Variante str.split('').reverse().join('') trennt an Codeunits und zerstört jedes Emoji wie den Partyspender 🎉 (U+1F389), die Rakete 🚀 (U+1F680) oder jedes Zeichen oberhalb von U+FFFF. Graphem-Cluster stellen eine weitere Ebene dar. Ein vom Benutzer wahrgenommenes Zeichen wie a mit einem kombinierenden Akzent (a + ◌́), ein Flaggen-Emoji aus zwei Regionalindikatoren oder ein ZWJ-verbundenes Familien-Emoji 👨‍👩‍👧 besteht aus mehreren Codepoints. Die Codepoint-Umkehrung vertauscht weiterhin die Einzelteile, sodass das Familien-Emoji zu drei separaten Personenfiguren wird und der Akzent vom Grundbuchstaben abrutscht. Intl.Segmenter mit granularity: 'grapheme' ist der standardkonforme Weg, Graphem-Cluster zu iterieren und diese Folgen bei der Umkehrung intakt zu halten. Auf Operationsebene beträgt der Aufwand O(n) bezogen auf die Anzahl der Segmente, wobei n die Zeichenkettenlänge in Codepoints oder Graphemen je nach gewählter Segmentierung ist. Zweimaliges Umkehren ergibt die Ausgangszeichenkette, was die Funktion für Palindrom-Prüfungen nützlich macht. Bei Unicode-lastiger Eingabe reduziert eine NFC-Normalisierung (str.normalize('NFC')) vor der Umkehrung Grundzeichen + kombinierende Folgen zu vordefinierten Formen, falls vorhanden, was Überraschungen in der Ausgabe vermindert. Rechts-nach-links-Schriften wie Arabisch und Hebräisch werden in logischer Reihenfolge gespeichert, aber von rechts nach links dargestellt, sodass eine umgekehrte arabische Zeichenkette optisch trotzdem umgekehrt aussieht.

  • Codepoint-Umkehrung: [...str].reverse().join('') iteriert nach Codepoints und bewahrt Surrogate-Paare oberhalb von U+FFFF (die meisten Emoji)
  • Einfache Byte-Falle: str.split('').reverse().join('') trennt UTF-16-Codeunits und zerstört jedes Zeichen oberhalb von U+FFFF
  • Graphem-Cluster: Intl.Segmenter({ granularity: 'grapheme' }) hält kombinierende Zeichen, Flaggenfolgen und ZWJ-Emoji 👨‍👩‍👧 intakt
  • Wort-Umkehrung: split(/\s+/), reverse, join(' '); erhält jedes Wort intern und kehrt nur die Reihenfolge um
  • Komplexität: O(n), wobei n die Anzahl der Segmente ist; zweimaliges Umkehren liefert die Ausgangszeichenkette zurück
  • NFC-Normalisierung: str.normalize('NFC') fasst kombinierende Folgen vor der Umkehrung zu vordefinierten Formen zusammen, falls vorhanden
  • Bidi-Text: Arabisch und Hebräisch werden in logischer Reihenfolge gespeichert; die gerichtete Darstellung erfolgt durch die BiDi-Schicht des Browsers, getrennt von der Datenumkehrung

Beispiele

Alle Zeichen umkehren (Grundlagen)

Modus: Alle umkehren
Eingabe:  hello world
Ausgabe: dlrow olleh

Eingabe:  12345
Ausgabe: 54321

Eingabe:  A man a plan a canal Panama
Ausgabe: amanaP lanac a nalp a nam A

Wörter umkehren vs. jedes Wort umkehren

Eingabe: The quick brown fox

Modus: Wörter umkehren (nur Wortreihenfolge)
-> fox brown quick The

Modus: Jedes Wort umkehren (Buchstaben innerhalb jedes Wortes)
-> ehT kciuq nworb xof

Palindrom-Prüfung

Eingabe:  racecar
Alle umkehren -> racecar    (gleich, ist Palindrom)

Eingabe:  level
Alle umkehren -> level       (Palindrom)

Eingabe:  hello
Alle umkehren -> olleh       (KEIN Palindrom)

Sicherheit bei Unicode und Emoji

Eingabe:  cafe (mit kombinierendem Akut auf e)
Naive Umkehrung: efac   (Akzent löst sich vom Buchstaben)
Graphem-bewusst: efac   (Akzent bleibt verbunden)

Eingabe:  Familien-Emoji-ZWJ-Sequenz
Naive Umkehrung: in 3 separate Emojis zerlegt
Dieses Tool: hält den Cluster intakt

Zeilenreihenfolge in einer Logdatei umkehren

Modus: Zeilenreihenfolge umkehren
Eingabe:
  2026-06-10 09:00  startup
  2026-06-10 09:05  login ok
  2026-06-10 09:10  query slow

Ausgabe (neueste zuerst):
  2026-06-10 09:10  query slow
  2026-06-10 09:05  login ok
  2026-06-10 09:00  startup

FAQ

Was macht das Umkehren eines Strings?

Es gibt die Eingabe in umgekehrter Zeichenreihenfolge zurück: 'hello' → 'olleh'. Praktisch für Spielerei-Chiffren im Stil von ROT-13, Palindrom-Prüfungen, gespiegelten Anzeigetext oder schnelle Demos zur Array-Manipulation in Tutorials.

Werden Emoji und CJK korrekt umgekehrt?

Die meisten CJK-Zeichen und einfachen Emoji funktionieren korrekt, weil die Seite den Spread-Operator ([...text]) verwendet, der UTF-16-Surrogate-Paare richtig behandelt. Komplexe Emoji-Sequenzen (Familien-Emoji, Flaggen-Emoji, Hauttonkombinationen) können beim Umkehren zerfallen, da sie aus mehreren Codepoints bestehen, die getrennt werden.

Was passiert mit kombinierenden Akzenten?

Zeichen aus einem Grundbuchstaben plus kombinierenden Markern (e + Akut → é) werden als ein einzelnes Graphem umgekehrt. Eingaben in zerlegter Form müssen eventuell zuerst normalisiert werden – die Seite kann beim Eingeben NFC-Normalisierung anwenden. Das sichtbare Ergebnis für natürliche Sprache stimmt in beiden Fällen.

Wie unterscheidet sich Umkehren von einer Spiegelung?

Umkehrung ist Zeichenreihenfolge: 'AB' → 'BA'. Spiegelung ist eine visuelle Drehung: 'AB' angezeigt als ⟨ƎA⟩, was eine CSS-Transformation oder Sonderzeichen erfordert. Die Seite kehrt die Zeichenreihenfolge um, sie spiegelt keine Pixel. Für gespiegelten Text-Effekt nutze CSS scaleX(-1).

Bleiben Zeilenumbrüche erhalten?

Standardmäßig wird die gesamte Eingabe inklusive Zeilenumbrüche umgekehrt, sodass die letzte Zeile zuerst steht. Mit der Option 'jede Zeile einzeln umkehren' werden die Zeichen innerhalb der Zeilen umgekehrt, die Zeilenreihenfolge bleibt aber erhalten – nützlich für visuelle Effekte bei mehrzeiligem Text.

Ist umgekehrter Text immer lesbar?

Sprachen, die von links nach rechts gelesen werden (Englisch, Chinesisch, Japanisch), werden beim Umkehren unleserlich. Rechts-nach-links-Sprachen (Arabisch, Hebräisch) werden zwar etwas lesbarer, sind aber ebenfalls kaputt, weil der Bidi-Algorithmus gegen die Umkehrung arbeitet. Umkehren ist meist eine Code- oder Rätselübung, keine echte Textumwandlung.

Wird mein Text hochgeladen?

Nein. Das Umkehren läuft in deinem Browser. Eingefügter Text wird nicht übertragen.