CSV-Feld maskieren: Kommas, Zeilenumbrüche und Anführungszeichen
Ein CSV-Feld wirkt unkompliziert, bis sein Wert ein Komma, einen Zeilenumbruch oder ein Anführungszeichen enthält.
Im Browser ausführen – kostenlos
Dieses Werkzeug wendet die üblichen Maskierungsregeln auf einen Textwert an, damit Sie ihn sicher in eine kommaseparierte Zeile einsetzen können. Gewöhnlicher Text bleibt erhalten; schutzbedürftige Felder werden in doppelte Anführungszeichen eingeschlossen und enthaltene Anführungszeichen verdoppelt. Das Ergebnis ist deterministisch, sofort wiederverwendbar und für Tabellenkalkulationen, Exporte, erzeugte Berichte sowie Datenpipelines geeignet.
Machen Sie beliebigen Text zu einem sicheren CSV-Feld
CSV verwendet Kommas und Zeilenenden, um Felder und Datensätze voneinander zu trennen. Gehören diese Zeichen zum eigentlichen Wert, entsteht ein Konflikt. Fügen Sie einen Textwert ein oder senden Sie ihn; das Werkzeug liefert genau die Darstellung zurück, die eine einzelne Position in einer kommaseparierten Zeile belegen darf. Ein einfacher Wert wie ein Kontocode bleibt unverändert. Enthält er ein Komma, einen Wagenrücklauf, einen Zeilenvorschub oder ein doppeltes Anführungszeichen, wird er vollständig in doppelte Anführungszeichen eingeschlossen. Jedes bereits enthaltene Anführungszeichen wird zu zwei aufeinanderfolgenden Zeichen, sodass ein konformer CSV-Leser das Original wiederherstellen kann. Die Umwandlung ändert ausschließlich die für CSV-Sicherheit notwendige Syntax: Leerraum wird nicht gekürzt, Zeilenenden werden nicht vereinheitlicht, Zahlen werden nicht neu interpretiert und die Großschreibung bleibt erhalten. Dieser enge Umfang macht die Funktion zu einem zuverlässigen Baustein, wenn eine Anwendung Zeilen und Spalten bereits zusammensetzt, aber für jeden Einzelwert eine korrekte, wiederverwendbare Regel benötigt. Leerer Text bleibt leer, da er in einem standardmäßigen kommaseparierten Datensatz bereits ein gültiges leeres Feld bildet.
Erkennen Sie, wann Anführungszeichen nötig sind
Entscheidend ist die Trennung zwischen Inhalt und CSV-Struktur. Ein Komma in einem Firmennamen darf keine neue Spalte erzeugen, und ein Zeilenumbruch in einer Anschrift darf keinen neuen Datensatz beginnen. Das Einschließen des gesamten Feldes in doppelte Anführungszeichen signalisiert dem Parser, dass diese Zeichen wörtlicher Inhalt sind. Für Anführungszeichen gilt zusätzlich: Innerhalb eines umschlossenen CSV-Feldes wird jedes wörtliche Anführungszeichen durch zwei dargestellt. Das Werkzeug erkennt all diese Fälle gemeinsam. Enthält ein Text beispielsweise sowohl ein Komma als auch einen zitierten Spitznamen, erhält er ein äußeres Paar und jedes ursprüngliche Anführungszeichen wird verdoppelt. Text ohne Strukturzeichen wird unverändert zurückgegeben und bleibt gültig. Das Verhalten berücksichtigt Unix-Zeilenvorschübe ebenso wie Wagenrückläufe anderer Systeme. Es ist bewusst auf kommasepariertes CSV und nicht auf frei wählbare Trennzeichen ausgerichtet. Für tabulator- oder semikolongetrennte Daten sollten Sie die Regeln des jeweiligen Formats anwenden. Die Ausgabe ist ein Feld, keine vollständige Zeile, Kopfzeile oder Datei.
Nutzen Sie den maskierten Wert in Exporten und Pipelines
Setzen Sie den zurückgegebenen Text direkt zwischen die Kommas Ihres Zeilengenerators, ohne eine weitere Schicht Anführungszeichen hinzuzufügen. Wenn Sie den Vorgang unabhängig auf jeden Quellwert anwenden, lassen sich Zeilen aus Formularen, Datenbankergebnissen, Protokollen oder Berichtsdaten zuverlässig erzeugen. Der Algorithmus ist deterministisch und benötigt kein Netzwerk; dieselbe Eingabe ergibt daher im Browser und über die API stets dasselbe maskierte Feld. Das erleichtert Tests mit festen Beispieldaten und den Einsatz in reproduzierbaren Builds. Verarbeiten Sie ein bereits maskiertes Feld nicht erneut, außer dessen Darstellung soll selbst der neue wörtliche Wert sein: CSV-Maskierung ist kontextabhängig, daher behandelt ein zweiter Durchlauf die erste Syntax korrekt als Inhalt und fügt eine weitere Ebene hinzu. Diese Fähigkeit schützt die Feldsyntax, nicht vor Formeleinschleusung in Tabellenkalkulationen. Soll nicht vertrauenswürdiger Text, der etwa mit einem Gleichheitszeichen beginnt, in einer Tabellenkalkulation geöffnet werden, prüfen Sie getrennte Schutzmaßnahmen nach den Richtlinien der Zielanwendung. Verbinden Sie abschließend die maskierten Felder mit Kommas und beenden Sie Datensätze mit dem vom Empfängersystem verlangten Zeilenende.
Anwendungsfälle
Erstellen Sie einen sicheren CSV-Export
Maskieren Sie jeden Datenbank- oder Anwendungswert, bevor Sie die resultierenden Felder zu einem kommaseparierten Datensatz verbinden.
Bewahren Sie mehrzeilige Anschriften
Halten Sie eingebettete Zeilenumbrüche in einem einzigen Adressfeld, statt versehentlich zusätzliche CSV-Datensätze zu erzeugen.
Schützen Sie Namen und Beschreibungen
Stellen Sie Kommas und Anführungszeichen in Produktnamen, Notizen und Beschreibungen dar, ohne nachfolgende Spalten zu verschieben.
Häufige Fragen
Was kostet eine Anfrage?
Eine API-Anfrage kostet $0.002. Dieselbe deterministische Umwandlung steht im Browser auch kostenlos bereit.
Werden alle Werte in Anführungszeichen gesetzt?
Nein. Das Ergebnis wird umschlossen, wenn der Text ein Komma, einen Wagenrücklauf, Zeilenvorschub oder ein doppeltes Anführungszeichen enthält; andernfalls bleibt er unverändert.
Wie werden Anführungszeichen maskiert?
Jedes doppelte Anführungszeichen innerhalb des Feldes wird zu zwei aufeinanderfolgenden Zeichen; ein weiteres Paar umschließt das gesamte Feld.
Erzeugt das Werkzeug eine vollständige CSV-Zeile?
Nein. Es liefert ein einzelnes maskiertes Feld. Verarbeiten Sie jeden Wert separat, verbinden Sie die Ergebnisse mit Kommas und ergänzen Sie das passende Datensatzende.
Werden mehrzeilige Werte unterstützt?
Ja. Text mit Wagenrückläufen oder Zeilenvorschüben wird umschlossen, damit diese Umbrüche innerhalb desselben Feldes bleiben.
Verhindert dies Formeleinschleusung in Tabellen?
Nein. Es setzt nur die CSV-Feldsyntax um. Der Schutz vor Formeleinschleusung hängt von der Zielanwendung ab und erfordert eine separate Richtlinie.
Für Entwickler — API-Zugang
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.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/str/escape-csv-field \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Quarterly report, \"final\""}'const res = await fetch("https://api.kit.forhosting.com/str/escape-csv-field", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Quarterly report, \"final\""
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/escape-csv-field",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Quarterly report, \"final\""
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/escape-csv-field", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Quarterly report, \\"final\\""}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Quarterly report, \"final\""}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/escape-csv-field", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"text": "Quarterly report, \"final\""
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.escape_csv_field",
"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.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |