ForHosting KIT · Entwickler-Tools

Ausgeglichene Klammern prüfen

Der Validator für ausgeglichene Klammern prüft runde, eckige und geschweifte Klammern in Code oder Text mit einem einzigen deterministischen Durchlauf.

● BetaKostenlos · im Browser
Nutzen Sie es über WebAPIE-MailTelegramApp bald

Er stellt fest, ob jede öffnende Klammer den richtigen Abschluss besitzt und die Verschachtelungsreihenfolge stimmt. Bei ungültiger Eingabe nennt das Ergebnis die erste erkennbare Abweichung, ihre nullbasierte Position sowie das gefundene und das erwartete Zeichen. Damit eignet sich das Werkzeug für manuelle Kontrollen, Editor-Integrationen, Build-Skripte, Lernaufgaben und schlanke Validierungsabläufe, ohne einen sprachspezifischen Parser vorauszusetzen.

Verstehen Sie den Prüfumfang

Dieser Validator konzentriert sich auf die drei in Quellcode und strukturiertem Text üblichen Klammerfamilien: runde, eckige und geschweifte Klammern. Eine Eingabe ist gültig, wenn jedes öffnende Zeichen durch ein Zeichen derselben Familie geschlossen wird und die Abschlüsse in umgekehrter Reihenfolge der Öffnungen erscheinen. So ist <code>({[]})</code> ausgeglichen, weil jedes innere Paar vor seinem Behälter endet; <code>([)]</code> ist dagegen ungültig, weil die runde Klammer geschlossen wird, während die eckige noch offen ist. Andere Zeichen als diese sechs Klammerzeichen beeinflussen das Ergebnis nicht. Sie können deshalb eine Funktion, einen Konfigurationsausschnitt, einen mathematischen Ausdruck, Fließtext oder ein mehrzeiliges Beispiel einfügen. Die Prüfung arbeitet lexikalisch und nicht sprachbewusst: Auch Klammern in Zeichenketten oder Kommentaren werden gezählt. Diese vorhersehbare Regel funktioniert sprachübergreifend, ersetzt jedoch keinen JavaScript-, Python- oder JSON-Parser und keinen Compiler, wenn Klammern in Zeichenketten und Kommentaren unberücksichtigt bleiben sollen.

Deuten Sie Positionen und Diagnoseangaben

Passt eine schließende Klammer nicht zur zuletzt geöffneten, endet die Prüfung sofort und meldet dieses Zeichen als erste erkannte Abweichung. Die Antwort enthält <code>balanced: false</code>, eine nullbasierte <code>position</code>, das Zeichen <code>found</code> und den Wert <code>expected</code>. Bei einer fehlerhaften Verschachtelung wie <code>{[}</code> wird die schließende geschweifte Klammer an Position zwei gemeldet, weil dort eine schließende eckige Klammer erforderlich war. Außerdem enthält die Antwort die Position der öffnenden Klammer, aus der diese Erwartung folgt. Erscheint eine schließende Klammer ohne verfügbare Öffnung, erklärt der erwartete Wert, dass eine öffnende Klammer benötigt wurde. Eine am Ende übrige Öffnung lässt sich erst nach dem vollständigen Durchlauf erkennen; dann verweist das Ergebnis auf die zuletzt geöffnete ungeschlossene Klammer und nennt ihren erforderlichen Abschluss. Es gilt die JavaScript-Zeichenkettenindizierung, daher sind Positionen UTF-16-Codeeinheiten-Offsets. In gewöhnlichem ASCII-Code entsprechen sie den Zeichenpositionen der meisten Editoren.

Nutzen Sie die Prüfung in Automatisierung und Reviews

Für eine interaktive Kontrolle fügen Sie Code oder Text in den Browser-Runner ein und lesen die strukturierte Antwort. Die API verwendet denselben deterministischen Solver, sodass Automatisierungen genau dieselbe Entscheidung und dieselben Diagnosefelder wie ein manueller Lauf erhalten. Ein Pre-Commit-Hook kann erzeugte Ausschnitte ablehnen, wenn <code>balanced</code> false ist; eine Dokumentationspipeline kann fehlerhafte Beispiele vor der Veröffentlichung abfangen, und eine Lernanwendung kann mit dem erwarteten Zeichen und der genauen Position gezielte Hinweise geben. Eine API-Anfrage kostet $0.002; eine variable Gebühr pro Zeichen ist nicht vorgesehen. Die Prüfung läuft in linearer Zeit, da jedes Zeichen einmal besucht wird und ein Stack nur noch offene Klammern speichert. Das Werkzeug schreibt den übermittelten Inhalt weder um noch repariert, formatiert, führt oder wertet es ihn aus. Verwenden Sie die Antwort als präzises Signal zur Klammerstruktur und kombinieren Sie sie mit einem Parser oder Linter, wenn zusätzlich Grammatik, Zeichenketten, Kommentare oder weitere Syntaxfehler geprüft werden müssen.

Prüfen Sie generierten Code vor dem Speichern

Lehnen Sie einen erzeugten Ausschnitt ab, wenn die Verschachtelung unvollständig ist oder eine Klammer zum falschen Paar gehört.

Geben Sie Lernenden gezielte Hinweise

Zeigen Sie die nullbasierte Stelle und das erwartete Abschlusszeichen, statt nur einen ungültigen Ausdruck zu melden.

Validieren Sie Dokumentationsbeispiele

Prüfen Sie Codebeispiele in der Veröffentlichungspipeline und markieren Sie fehlerhafte Strukturen, bevor Leser sie sehen.

Welche Zeichen werden geprüft?

Geprüft werden runde (), eckige [] und geschweifte Klammern {}. Alle anderen Zeichen werden ignoriert.

Beginnen die Positionen bei null?

Ja. Position null ist die erste UTF-16-Codeeinheit der Zeichenkette gemäß der JavaScript-Indizierung.

Werden Klammern in Zeichenketten oder Kommentaren ignoriert?

Nein. Diese sprachneutrale lexikalische Prüfung zählt jedes Klammerzeichen unabhängig von seinem Vorkommen.

Was geschieht mit einer nie geschlossenen Öffnung?

Nach dem vollständigen Durchlauf nennt das Ergebnis die zuletzt geöffnete ungeschlossene Klammer und das benötigte Abschlusszeichen.

Was kostet eine API-Anfrage?

Jede API-Anfrage kostet $0.002. Der Browser-Runner führt dieselbe deterministische Prüfung lokal aus.

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/dev/balanced-brackets

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/dev/balanced-brackets \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"function demo(items) { return items[0]; }"}'
{
  "text": "function demo(items) { return items[0]; }"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.balanced_brackets",
  "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.

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.

Vollständige KIT-Dokumentation lesen →