Extraire une colonne CSV
Demandez la colonne email d'un tableau name, email, role et obtenez ada@example.com et bob@example.com, dans l'ordre et sans l'en-tête. Choisissez la colonne par son nom ou par sa position depuis 0, avec virgule, point-virgule ou tabulation. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Colonne
- Indice de colonne
- 1
- Valeurs
- ada@example.com, bob@example.com
- Quantité
- 2
- Délimiteur
- ,
Extraire une seule colonne d'un CSV est une tâche courante de tableur avec une promesse produit claire : collez le texte du tableau, indiquez le champ ou son index de base zéro, et recevez une liste ordonnée de valeurs de cellules sans ouvrir Excel ni écrire un script improvisé. Cette capacité analyse le CSV au style RFC 4180 avec champs entre guillemets, délimiteurs optionnels et un mode d'en-tête pour que la première ligne serve de noms de colonnes plutôt que de données. Une entrée vide, des en-têtes inconnus et des index hors plage échouent en entrée invalide afin que les appelants n'enregistrent jamais de succès creux.
Ce que signifie extraire une colonne CSV et quand l'utiliser
L'intention de recherche pour extraire une colonne CSV, tirer un champ d'un CSV ou obtenir les valeurs d'un seul champ d'un export de tableur est plus étroite que les transformations de table complète. Les personnes concernées ont déjà un tableau séparé par délimiteur et ne veulent qu'une tranche verticale : chaque e-mail, chaque SKU, chaque score.
Cette capacité définit un CSV comme des lignes séparées par CR, LF ou CRLF, et des champs séparés par un délimiteur d'un seul caractère (virgule par défaut, avec point-virgule et tabulation pris en charge pour les exports régionaux et TSV). Les champs peuvent être entre guillemets doubles ; les guillemets internes doivent être doublés selon RFC 4180 pour que virgules et sauts de ligne dans une cellule ne découpent pas la ligne. Préférez cet outil extract-csv-column lorsque l'intention de la landing est littéralement un champ sous forme de liste.
Cas d’usage
Listes de diffusion depuis des exports CRM
Collez un CSV de contacts, sélectionnez la colonne e-mail par nom d'en-tête et copiez les valeurs ordonnées dans un outil de publipostage ou de newsletter.
Colonnes de notes pour carnets de notes
Les enseignants récupèrent une colonne d'évaluation depuis un export de classe sans ouvrir un tableur, puis collent les valeurs dans une calculatrice ou un LMS.
Questions fréquentes
Comment extraire une colonne d'un CSV ?
Le tableau values de la réponse liste ce champ dans l'ordre des lignes.
Puis-je sélectionner une colonne par index plutôt que par nom ?
Oui. Passez column comme nombre ou chaîne numérique telle que 0 ou "2".
Prend-il en charge les tabulations ou les points-virgules comme séparateurs ?
Oui. Définissez delimiter sur ";" ou utilisez "\t" pour les valeurs séparées par tabulation. Le délimiteur par défaut est la virgule.
Pourquoi le nom de ma colonne est-il introuvable ?
Les noms de colonnes doivent correspondre exactement, majuscules comprises, donc Email et email sont deux colonnes différentes. Si seule la casse diffère, le message peut suggérer l'orthographe existante. Vérifiez aussi que la première ligne contient bien ces noms.
Que faire si la première ligne contient déjà des données ?
Désactivez l'option d'en-tête : chaque ligne est alors traitée comme une donnée. Choisissez ensuite la colonne par sa position, en comptant à partir de 0, puisqu'il n'y a plus de noms de colonnes.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/str/csv-select-column \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"csv":"name,email,role\nAda,ada@example.com,admin\nBob,bob@example.com,user","column":"email"}'const res = await fetch("https://api.kit.forhosting.com/str/csv-select-column", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"csv": "name,email,role\nAda,ada@example.com,admin\nBob,bob@example.com,user",
"column": "email"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/csv-select-column",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"csv": "name,email,role\nAda,ada@example.com,admin\nBob,bob@example.com,user",
"column": "email"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/csv-select-column", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"csv":"name,email,role\\nAda,ada@example.com,admin\\nBob,bob@example.com,user","column":"email"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"csv":"name,email,role\nAda,ada@example.com,admin\nBob,bob@example.com,user","column":"email"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/csv-select-column", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"csv": "name,email,role\nAda,ada@example.com,admin\nBob,bob@example.com,user",
"column": "email"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.csv_select_column",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Ce que signifie extraire une colonne CSV et quand l'utiliser
Lorsque has_header vaut true, la première ligne fournit les noms de colonnes et est exclue du tableau values renvoyé ; lorsqu'il vaut false, chaque ligne est une donnée et vous devez sélectionner par index numérique. Ne l'utilisez pas pour filtrer des lignes par condition, joindre deux fichiers, renommer de nombreuses colonnes ou convertir une table entière en JSON imbriqué — ce sont des intentions produit distinctes avec leurs propres landings.
Contrat d'entrée, sélection par en-tête ou index, et champs de réponse
Le delimiter optionnel vaut la virgule par défaut ; utilisez un seul caractère ou l'orthographe courante "\t" pour la tabulation. La correspondance des en-têtes est sensible à la casse, donc Email et email diffèrent ; lorsqu'un écart de casse seul se résoudrait de façon unique, le message d'erreur peut suggérer l'orthographe disponible. Envoyez un corps JSON avec le champ chaîne obligatoire csv égal au texte non vide du tableau et le column obligatoire égal à un nom d'en-tête ou à un index entier de base zéro (comme nombre ou chaîne purement numérique telle que "0"). Les alias text, input, data, source, content et value sont acceptés pour le corps CSV ; col, field, index et name pour le sélecteur. L'option has_header vaut true par défaut ; mettez-la à false lorsque la première ligne est déjà une donnée. Un csv manquant, vide ou non chaîne, un column manquant, des noms d'en-tête inconnus, des index négatifs ou hors plage et des champs entre guillemets non fermés déclenchent invalid_input avec un message qui nomme le problème, et ces échecs ne sont pas facturés sur l'API prépayée. En cas de succès, la réponse inclut column comme libellé résolu, column_index comme position de base zéro utilisée, values comme les chaînes de cellules ordonnées (chaîne vide si une ligne courte n'a pas cette cellule), count égal à la longueur de values, has_header et delimiter qui reprennent le mode, row_count comme nombre de lignes de données, method toujours csv_select_column, et headers avec les noms de la première ligne uniquement lorsque has_header est true — les champs optionnels sont omis plutôt que null. Utilisez values seul lorsqu'une liste de diffusion n'a besoin que de la colonne ; utilisez headers et column_index pour construire des tableaux d'interface qui mettent en évidence le champ sélectionné.
Usage API, tarification, flux de travail et limites pratiques
Appelez l'outil gratuit dans le navigateur pour extraire une colonne CSV pour des tableaux de devoirs, des exports CRM et des extractions rapides de champ sans écrire un parseur CSV dans chaque langage. Associez ce point de terminaison à filter-csv ou csv-to-json lorsque l'étape suivante est la sélection de lignes ou un tableau d'objets complet, mais conservez l'extraction de colonne CSV comme landing propre pour ne pas mélanger l'intention d'un seul champ avec des transformations multi-colonnes. N'attendez pas d'inférence de types, d'analyse de dates ni de détection automatique de délimiteur au-delà du paramètre delimiter explicite — ce sont des problèmes distincts. Utilisez l'API prépayée KIT lorsqu'un CMS, une étape ETL, un banc de QA, une application de tutorat ou un client mobile a besoin du même contrat sous solde à $0.002 par élément réussi ; les échecs de validation ne consomment jamais de solde après le rejet par le moteur. Un flux typique colle un export, sélectionne la colonne email avec has_header true, puis alimente values dans un envoi de courrier ou une étape de déduplication. Les auteurs livrant des SDK peuvent documenter csv et column comme requis, montrer un exemple de succès avec en-tête nommé et un exemple d'erreur de colonne manquante pour que les intégrateurs voient les deux côtés du contrat. Gardez des charges utiles de taille documentaire ordinaire adaptées à un isolate Worker plutôt que des dumps d'entrepôt de plusieurs mégaoctets.
Cas d'intégration
Identifiants de fixtures pour les tests
Les scripts CI extraient une colonne id stable par index de base zéro depuis des fixtures CSV golden afin que parseurs et pipelines échouent sur les régressions d'ordre de colonnes.
Questions techniques
Que se passe-t-il si le nom d'en-tête est incorrect ?
La requête échoue avec invalid_input et liste les en-têtes disponibles. La correspondance est sensible à la casse ; les échecs de validation ne sont pas facturés sur l'API prépayée.
L'outil d'extraction de colonne CSV est-il gratuit ?
L'outil navigateur s'exécute gratuitement sur votre appareil. Les appels API utilisent le solde prépayé KIT à $0.002 par élément réussi.