ForHosting KIT · Text & KI

Werkzeug zur Lauflängencodierung und -decodierung

„aaabbcccc“ wird zu „a3b2c4“ codiert, und das Decodieren von „a3b2c4“ liefert wieder „aaabbcccc“, Buchstabe für Buchstabe. Ziffern und Backslashes werden maskiert, damit jedes Ergebnis eindeutig lesbar bleibt, und jedes Unicode-Zeichen funktioniert. Kostenlos in Ihrem Browser.

  • Kostenlos
  • Läuft in Ihrem Browser
  • Ohne Anmeldung
  • Ihre Daten bleiben auf Ihrem Gerät
Nutzen Sie es über WebAPIE-MailTelegramApp bald
Wenn Sie eingeben
Text
aaabbcccc
Berechnungsmodus
Encode
Erhalten Sie
Ergebnis
a3b2c4

Die Lauflängencodierung ersetzt aufeinanderfolgende Wiederholungen eines Zeichens durch dieses Zeichen und die Anzahl seiner Vorkommen. Dieses Werkzeug führt die Umwandlung in beide Richtungen aus: Wählen Sie Codieren für normalen Text oder Decodieren für einen bereits codierten Wert. Unicode-Zeichen werden unterstützt, ihre Reihenfolge bleibt vollständig erhalten, und eine einfache Escape-Regel ermöglicht eine eindeutige Rückwandlung von Ziffern und umgekehrten Schrägstrichen. Das Ergebnis ist deterministisch und entsteht ohne Netzwerkzugriff, Zufall, Speicherung oder Interpretation durch ein Sprachmodell.

Codieren Sie aufeinanderfolgende Läufe in unveränderter Reihenfolge

Wählen Sie den Codiermodus und geben Sie den Ausgangsinhalt in das Textfeld ein. Der Codierer liest Unicode-Zeichen von links nach rechts, fasst ausschließlich gleiche benachbarte Zeichen zusammen und schreibt jede Gruppe als Zeichen mit anschließender Dezimalzahl. Ein Block aus drei gleichen Buchstaben wird beispielsweise zu diesem Buchstaben und der Zahl drei.

Gleiche Zeichen, zwischen denen ein anderes Zeichen steht, bleiben getrennte Läufe, denn die Lauflängencodierung beschreibt lokale Wiederholungen und nicht die Gesamthäufigkeit. Eine leere Eingabe liefert ein leeres Ergebnis; ein einzelnes Zeichen erhält die Anzahl eins. Ziffern und umgekehrte Schrägstriche benötigen eine Sonderbehandlung, weil die Anzahlen ebenfalls aus Ziffern bestehen.

Deshalb setzt das Format vor eine wörtliche Ziffer oder einen wörtlichen umgekehrten Schrägstrich einen umgekehrten Schrägstrich und fügt danach die Anzahl an. Die Antwort enthält den gewählten Modus und das Ergebnis.

Decodieren Sie mit strenger Formatprüfung

Wählen Sie den Decodiermodus, wenn der Text bereits RLE-Elemente enthält. Jedes Element muss genau eine Zeichendarstellung und danach eine positive Dezimalzahl enthalten. Gewöhnliche Zeichen, die keine Ziffern sind, brauchen kein Präfix.

Einer wörtlichen Ziffer oder einem wörtlichen umgekehrten Schrägstrich muss ein umgekehrter Schrägstrich vorangestellt werden, damit sich die Nutzdaten von der folgenden Anzahl unterscheiden lassen. Anzahlen dürfen weder null sein noch mit null beginnen oder die sichere Ganzzahlgenauigkeit von JavaScript überschreiten. Der Decoder weist außerdem eine nicht maskierte Ziffer am Elementanfang, einen alleinstehenden abschließenden Schrägstrich, eine unbekannte Escape-Sequenz oder ein Zeichen ohne Anzahl zurück.

Die decodierte Ausgabe ist auf eine Million Unicode-Zeichen, die Eingabe auf einhunderttausend Zeichen begrenzt, damit eine riesige Anzahl nicht übermäßig viel Speicher belegt.

Verwenden Sie RLE bei bedeutsamen Wiederholungen

Die Lauflängencodierung ist eine umkehrbare Darstellung und kein universelles Kompressionsverfahren. Besonders geeignet ist sie für Daten mit langen ununterbrochenen Wiederholungen, etwa einfache Masken, wiederholte Statusmarkierungen, Rasterzeilen, Testmuster oder einführende Kompressionsübungen. Wechselnde Zeichen oder überwiegend einzigartige Zeichen können den Text verlängern, weil jeder Lauf eine Anzahl enthält; das Werkzeug verschweigt diesen Nachteil nicht und wählt auch nicht automatisch ein anderes Verfahren.

Bewahren Sie in Produktionsabläufen das Ergebnis zusammen mit der Dokumentation dieser Escape-Konvention auf, da andere Implementierungen Trennzeichen, Klammern oder vorangestellte Anzahlen verwenden können. Unicode wird nach Codepunkten verarbeitet, sodass übliche Emoji jeweils als einzelnes Zeichen gelten.

Einen grundlegenden Kompressionsalgorithmus erklären

Zeigen Sie, wie benachbarte Läufe zu Zeichen-Anzahl-Elementen werden, und stellen Sie anschließend den Inhalt wieder her.

Kompakte, repetitive Testdaten erzeugen

Stellen Sie lange Läufe in Masken, Rasterzeilen, Statuswerten oder synthetischen Daten durch eine kurze deterministische Zeichenfolge dar.

Codierte Eingaben validieren

Weisen Sie fehlerhafte RLE-Zeichenfolgen vor der Verarbeitung mit eindeutigen Meldungen zu ungültigen Anzahlen und Escape-Sequenzen zurück.

Wie werden Ziffern codiert?

Vor eine wörtliche Ziffer wird ein umgekehrter Schrägstrich gesetzt; danach folgt ihre Anzahl. So ist sie nicht mit einer Lauflänge zu verwechseln.

Werden Emoji und andere Unicode-Zeichen unterstützt?

Ja. Der Algorithmus durchläuft Unicode-Codepunkte, sodass übliche ergänzende Zeichen wie Emoji einzeln gezählt werden.

Warum ist eine Anzahl mit führender Null ungültig?

Das kanonische Format verwendet positive Ganzzahlen ohne führende Nullen. Dadurch bleiben Werte vorhersehbar und wahrscheinliche Fehler werden erkannt.

Verkürzt die RLE-Codierung den Text immer?

Nein. Sie eignet sich für lange Wiederholungen, doch kurze oder wechselnde Läufe können den Text verlängern, da jeder eine Anzahl enthält.

Werden wiederholte Buchstaben zusammengefasst, die nicht nebeneinanderstehen?

Nein. Nur gleiche, direkt aufeinanderfolgende Zeichen bilden einen Lauf. In „abab“ ist jeder Buchstabe ein eigener Lauf, das Ergebnis lautet also „a1b1a1b1“ und ist länger als das Original. Die Codierung beschreibt lokale Wiederholung, keine Gesamthäufigkeit.

Gibt es eine Obergrenze für die Textlänge?

Ja. Ihre Eingabe darf bis zu hunderttausend Unicode-Zeichen lang sein, und ein decodiertes Ergebnis ist auf eine Million Zeichen begrenzt. So kann eine kurze Eingabe mit einer riesigen Anzahl nicht übermäßig viel Speicher belegen.

Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.

POSThttps://api.kit.forhosting.com/text/run-length-encode

Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.

curl -X POST https://api.kit.forhosting.com/text/run-length-encode \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"aaabbcccc"}'
{
  "text": "aaabbcccc"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "text.run_length_encode",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.

pro Anfrage$0.002

Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.

max_tokens20000
HTTPCodeBedeutung
401unauthorizedDer API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer).
402insufficient_balanceIhr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht.
404unknown_typeUnbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog.
429rate_limitedZu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt.

Codieren Sie aufeinanderfolgende Läufe in unveränderter Reihenfolge

Dieselbe Eingabe erzeugt stets denselben JSON-Wert.

Decodieren Sie mit strenger Formatprüfung

Fehlerhafte Werte führen bewusst zu invalid_input und niemals zu einem nur scheinbar richtigen Teilergebnis.

Verwenden Sie RLE bei bedeutsamen Wiederholungen

Es gibt weder Netzwerkzugriffe noch geteilten Zustand; jedes über die API verarbeitete Element kostet $0.002.

Was kostet eine API-Anfrage?

Jedes über die API verarbeitete Element kostet $0.002. Der Browser führt dieselbe deterministische Umwandlung lokal aus.

Vollständige KIT-Dokumentation lesen →