Convertir le texte en snake_case underscore_case Gratuit En ligne Sûr
Collez une ligne et relisez-la en snake_case. Tout se passe dans votre navigateur — rien de ce que vous tapez n'est envoyé nulle part, et les règles suivent la langue de cette page, pas l'anglais.
Écrivez-le autrement
Rien n'est envoyé
La même ligne dans les sept écritures
| Écriture | La même ligne, écrite ainsi |
|---|---|
| majuscules | CRÈME BRÛLÉE POUR 2 — STRASSE 17, FOOBAR |
| minuscules | crème brûlée pour 2 — straße 17, foobar |
| Title Case | Crème Brûlée Pour 2 — Straße 17, Foobar |
| snake_case | crème_brûlée_pour_2_straße_17_foo_bar |
| kebab-case | crème-brûlée-pour-2-straße-17-foo-bar |
| camelCase | crèmeBrûléePour2Straße17FooBar |
| une adresse d'URL | creme-brulee-pour-2-strasse-17-foobar |
D'où viennent ces formes
Majuscules et minuscules furent jadis deux alphabets distincts. Les capitales sont romaines, taillées dans la pierre au ciseau ; les minuscules descendent de la minuscule caroline, façonnée par une plume courant vite sur le parchemin. Les imprimeurs gardaient les deux dans des casses séparées — la haute et la basse — et les noms sont restés bien après la disparition des casses. Les formes de la programmation sont bien plus jeunes et furent inventées pour résoudre un seul problème : un nom ne peut pas contenir d'espace. snake_case vient des premiers temps du C, camelCase de Smalltalk, kebab-case de Lisp, et le slug du besoin de mettre un titre humain dans une adresse où espaces et accents ne sont pas admis.
Où vous les rencontrez
La capitalisation de chaque mot appartient aux titres et aux couvertures de livres ; la capitalisation de phrase à presque tout le reste, et de plus en plus aux interfaces, parce qu'elle se lit plus vite. snake_case nomme les colonnes de base de données et les variables Python ; camelCase les variables JavaScript et les méthodes Java ; kebab-case les classes CSS et les noms de fichiers des projets web. Le slug est ce qui change le titre d'un article en dernière partie de son adresse, et c'est la seule conversion d'ici que lisent les moteurs de recherche.
Questions fréquentes
Pourquoi le passage en capitales change-t-il parfois le nombre de lettres ?
Parce que la casse est une propriété de la langue, non du caractère. Le ß allemand devient SS en capitales : une lettre en devient deux. Le turc possède un i avec point et un sans, et la capitale de i est İ, non I — se tromper là transforme un mot turc en un autre. Les conversions d'ici suivent les règles de la langue de la page, raison pour laquelle une même saisie peut donner un résultat différent sur la page turque et sur l'anglaise.
Pourquoi le slug retire-t-il accents et ponctuation ?
Parce qu'une adresse doit survivre au fait d'être copiée dans un message, imprimée sur papier et retapée à la main. Les lettres accentuées sont licites dans une URL moderne, mais elles sont encodées en pourcentages à la copie, et une adresse lisible devient une suite de symboles. Les réduire à des lettres simples, des chiffres et des traits d'union garde l'adresse lisible, partageable et identique partout où elle paraît.
Le résultat est-il exact ?
Là où les deux unités se définissent l'une par l'autre en nombres entiers, oui — la page le dit au-dessus du chiffre, et le seul arrondi porte sur le nombre de décimales affichées. Là où le rapport n'a pas de décimale finie, la page affiche douze chiffres significatifs et qualifie la relation d'approchée plutôt que de prétendre le contraire.
Ce que je saisis quitte-t-il mon appareil ?
Non. Le calcul se fait dans votre navigateur ; rien n'est envoyé, et il n'y a d'ailleurs aucun serveur pour le recevoir. Une fois la page chargée, elle fonctionne réseau coupé.
Pourquoi on convertit un texte en snake_case
Un programmeur ne peut pas nommer une variable annual report total, car un nom ne peut pas contenir d'espace. Une colonne de base de données ne peut pas s'appeler Customer First Name. Un fichier nommé Final Draft (2).docx finira tôt ou tard par agacer un script. Quelque part en chemin, l'expression humaine doit devenir un seul mot, et la forme sur laquelle se sont fixées bien des communautés est le snake_case : toutes les lettres en minuscules, les mots joints par des tirets bas, annual_report_total, customer_first_name, final_draft_2. Convertir un texte en snake_case, c'est prendre n'importe quelle expression, dans n'importe quel état, et la mettre sous cette forme en une seule étape.
Collez une ligne et relisez-la en snake_case. La conversion se fait dans votre navigateur, rien de ce que vous tapez n'est envoyé nulle part, et les règles suivent la langue de cette page et non l'anglais. Elle découpe la ligne en mots, les met en minuscules et les joint par des tirets bas. Une ligne déjà écrite en camelCase est coupée elle aussi à ses majuscules : fooBar devient donc foo_bar. Vous trouverez plus bas ce que cela signifie exactement, ce qui est écarté, comment la page traite les lettres délicates de différentes langues, où le snake_case est la convention et où il ne l'est pas, et les pièges qui attrapent ceux qui convertissent un texte en snake_case à la hâte.
Ce que fait la conversion
Découper, mettre en minuscules, joindre
La page commence par découper la ligne en mots. Elle met ensuite chacun en minuscules et les joint par des tirets bas. La ligne Crème brûlée for 2 — straße 17, fooBar revient sous la forme crème_brûlée_for_2_straße_17_foo_bar. Les accents sont conservés, les nombres restent des mots à part, le tiret et la virgule ont disparu, et fooBar a été coupé en deux, parce que la majuscule qu'il contient marque une limite.
Où tombent les coupes
Une limite de mot est une espace, un signe de ponctuation, un tiret, un symbole ou un passage de minuscule à majuscule à l'intérieur d'un mot. Ainsi l'expression customerFirstName, l'expression Customer First Name et l'expression customer-first-name deviennent toutes customer_first_name. C'est la force pratique de la conversion : elle accepte presque n'importe quel point de départ et arrive toujours au même endroit.
Copier le résultat
Un bouton à côté du résultat le copie dans le presse-papiers. Collez-le dans l'éditeur, le schéma ou la boîte de dialogue de fichier où le nom est nécessaire.
Ce que ne fait pas la conversion
Elle ne conserve pas la ponctuation
Virgules, points et tirets sont des limites entre les mots, non des caractères à reporter. C'est ce que vous voulez pour un nom de fichier ou une colonne de base de données, et non ce que vous voulez pour de la prose. Si vous passez une phrase par la page, elle revient sous forme de nom, non de phrase, et la ponctuation d'origine a disparu.
Elle ne retire pas les accents
La ligne garde ses lettres accentuées : crème_brûlée. Beaucoup de systèmes les acceptent, certains non, et un nom qui en contient peut causer des ennuis dans d'anciens outils. Si vous avez besoin de lettres simples, utilisez la page des slugs d'URL, qui retire les signes des lettres latines.
Elle ne vérifie pas que le nom est valide dans votre langage
Les langages de programmation ont leurs propres règles. Certains interdisent un nom qui commence par un chiffre, certains réservent des mots comme class ou return. La page transforme un texte en un nom de la bonne forme, et il vous faut toujours vous assurer que le nom est permis là où vous l'utilisez. Une expression comme 2 for 1 offer devient 2_for_1_offer, que la plupart des langages rejettent dès le début.
La langue compte
Écritures sans espaces
Découper en mots demande des limites. Le chinois et le japonais s'écrivent sans espaces ; une ligne dans ces écritures revient donc comme un seul mot. La page préfère le dire plutôt que de couper à un endroit deviné, car une mauvaise coupe produirait un nom d'apparence plausible qui voudrait dire autre chose.
Le turc et le i pointé
Le passage en minuscules suit les règles de la langue de la page. En turc, la forme minuscule de I est le ı sans point, et la forme minuscule de İ est i. Un convertisseur qui applique les règles de l'anglais change les mots. Cette page suit la langue dans laquelle elle est écrite.
L'allemand et le s dur
Le ß allemand est déjà une lettre minuscule et il est conservé, comme dans straße_17. STRASSE en capitales revient sous la forme strasse, car la forme capitale ne se souvient pas si elle venait de ß ou de deux lettres.
Écritures de droite à gauche et indiennes
L'arabe, l'hébreu et les écritures indiennes ont des espaces entre les mots et pas de casse ; la page joint donc leurs mots par des tirets bas et laisse les lettres telles quelles. Qu'un outil donné accepte de tels noms est une autre question.
Où le snake_case est la convention
Python et Ruby
Le guide de style de Python recommande le snake_case pour les fonctions, variables et modules, et Ruby suit la même habitude. Si vous écrivez du code dans l'un ou l'autre, vos noms sont presque toujours sous cette forme.
Bases de données
Les noms de tables et de colonnes en SQL sont couramment en snake_case : customer_id, created_at, order_total. Cela évite de devoir mettre les noms entre guillemets et reste sûr d'un système de bases de données à l'autre, dont certains ramènent les noms sans guillemets à une seule casse et transformeraient le camelCase en une suite illisible de lettres.
Fichiers de données et API
De nombreux services web utilisent des clés en snake_case dans leur JSON, et les tableurs exportés pour un traitement ultérieur portent souvent des en-têtes en snake_case. Si vos données sont en route par Convertir un CSV en JSON, la ligne d'en-tête devient les clés, et des en-têtes soignés en snake_case rendent le résultat facile à utiliser.
Constantes et variables d'environnement
Les constantes et variables d'environnement s'écrivent par convention en capitales avec des tirets bas : MAX_RETRIES, DATABASE_URL. Pour les obtenir, convertissez d'abord le texte en snake_case puis passez le résultat en capitales avec Convertir le texte en majuscules.
Noms de fichiers
Des minuscules avec des tirets bas font un nom de fichier sûr sur tous les systèmes, qui se trie et se recherche de façon prévisible. Beaucoup de photographes, de chercheurs et d'administrateurs l'utilisent pour cette seule raison.
Où ce n'est pas la convention
JavaScript et Java
Ces langages préfèrent le camelCase pour les variables et les fonctions, et le PascalCase pour les classes. Un nom issu d'un script Python peut devoir être converti avant d'apparaître dans un fichier JavaScript. Voir pour cela camelCase.
CSS et adresses web
Les noms de classes CSS et les adresses web utilisent généralement des traits d'union, non des tirets bas. L'outil pour cela est kebab-case. Les moteurs de recherche traitent un trait d'union comme un séparateur de mots et un tiret bas comme un lien, une petite différence qui est derrière l'habitude des adresses à traits d'union.
Prose et titres
Le snake_case est fait pour les noms, non pour la lecture. Un titre ou une phrase écrits ainsi fatiguent l'œil. Pour un texte humain, gardez les mots et les espaces, et pour un intitulé envisagez Title Case.
Comment convertir un texte en snake_case ici
Collez ou saisissez votre texte
Entrez l'expression dans le premier champ. Le résultat apparaît aussitôt dans le second ; vous pouvez donc le voir changer à mesure que vous tapez.
Vérifiez les coupes
Regardez où les mots ont été séparés. Un mot comme iPhone ou eBay est coupé à la majuscule, et un acronyme comme HTTPServer demande un coup d'œil pour voir s'il est sorti comme vous le vouliez.
Copiez-le
Appuyez sur le bouton de copie et collez le résultat là où vous en avez besoin. Pour d'autres formes de la même ligne, voir plus bas.
Utiliser le snake_case dans tout un projet
Une seule convention pour toute la pile
Un projet qui mélange les styles de nommage est plus difficile à lire qu'un projet un peu laid mais cohérent. Si la base de données utilise le snake_case, le code qui lui parle le fait souvent aussi, et les fichiers qui circulent entre les deux suivent. Quand vous convertissez un texte en snake_case pour une nouvelle colonne ou un nouveau champ, vous choisissez le nom avec lequel toutes les autres couches devront vivre ; choisissez-le donc une fois et portez-le jusqu'au bout.
Faire passer les noms d'une convention à l'autre
Tôt ou tard, un nom d'une convention doit apparaître dans une autre. Une colonne de base de données customer_first_name devient customerFirstName dans un objet JavaScript et customer-first-name dans une classe CSS ou une URL. Plutôt que de retaper chacun à la main, collez l'original dans la page qui produit la forme voulue : camelCase pour le code des familles C et JavaScript et kebab-case pour les styles et les adresses. Les trois formes d'un même nom sont des traductions exactes les unes des autres, et un convertisseur les produit de façon cohérente.
Fichiers de configuration
Les fichiers de réglages utilisent souvent des clés en snake_case, en particulier dans le YAML employé par de nombreux outils. Quand vous préparez un tel fichier à partir de données gardées en JSON, Convertir un JSON en YAML conserve les clés telles que vous les avez écrites, et Convertir un YAML en JSON fait l'inverse. Fixez-vous sur le snake_case pour les clés avant de commencer, et la conversion entre formats ne les perturbera pas.
Renommer en masse
Si vous héritez d'un fichier de données dont les en-têtes mélangent les styles, convertissez chaque en-tête avec cette page et remplacez-les en une seule passe. Testez d'abord sur un petit échantillon, car un script qui lit le fichier par en-tête cassera si un nom ne change qu'à certains endroits. Gardez à côté du fichier une liste des anciens et des nouveaux noms, pour qu'un collègue puisse voir ce qui a changé.
Écrire des noms qui durent
Dire ce qu'est la chose, non comment elle est stockée
Un bon nom décrit le contenu. order_total dit ce que signifie le nombre ; col7, non. Quand vous convertissez un texte en snake_case, assurez-vous que l'expression de départ est la plus claire que vous puissiez écrire, car le convertisseur préservera fidèlement sa clarté ou sa confusion.
Évitez les abréviations que vous seul comprenez
Un nom comme cust_fn_dt est une énigme pour tout le monde, et pour vous dans six mois. Les tirets bas ne coûtent rien, pas plus que des mots en plus. Un nom plus long qui se lit comme une phrase est un meilleur cadeau pour la personne suivante qu'un nom court qui exige une légende.
Gardez le singulier et le pluriel cohérents
Décidez si les tables sont nommées au singulier, customer, ou au pluriel, customers, et tenez-vous-y. La convention compte moins que son uniformité. Une expression mise en snake_case garde le nombre que vous lui avez donné.
Ajoutez un préfixe quand cela aide
Dans un grand schéma, un court préfixe regroupe des noms apparentés : billing_address, billing_city, billing_country. Saisir l'expression avec le préfixe et la convertir donne des résultats cohérents, et une liste alphabétique se regroupe alors d'elle-même.
Testez les noms avant de vous engager
Avant qu'un nom n'entre dans un schéma ou une API, essayez-le aux endroits où il apparaîtra : une requête, une variable, une liste de fichiers. S'il se lit naturellement dans les trois, il servira. S'il paraît lourd, raccourcissez ou reformulez l'expression et convertissez de nouveau le texte en snake_case. Une minute de test au départ évite plus tard un renommage dans des centaines de fichiers.
La même ligne dans les sept écritures
Un tableau des formes
Sous le convertisseur, un tableau montre la ligne d'exemple dans les sept formes que propose le site : majuscules, minuscules, Title Case, snake_case, kebab-case, camelCase et un slug d'URL. C'est un moyen rapide de voir à quoi ressemblent les mêmes mots dans chacune.
D'où viennent ces formes
Deux alphabets
Les majuscules et les minuscules furent jadis deux alphabets différents. Les majuscules sont romaines, taillées dans la pierre au ciseau ; les minuscules descendent de la minuscule caroline, façonnée par une plume courant vite sur le parchemin. Les imprimeurs gardaient les deux dans des casses séparées, le haut de casse et le bas de casse, et les noms sont restés longtemps après la disparition des casses.
Des noms sans espaces
Les formes de programmation sont beaucoup plus jeunes et ont été inventées pour résoudre un problème : un nom ne peut pas contenir d'espace. Le snake_case est venu du C des débuts, le camelCase de Smalltalk, le kebab-case de Lisp, et le slug d'URL du besoin de mettre un titre humain dans une adresse où les espaces et les accents ne sont pas permis. Le tiret bas était un caractère commode sur les claviers de l'époque, et il ressemble à une espace posée sur la ligne.
Pièges quand vous convertissez un texte en snake_case
Commencer un nom par un chiffre
La plupart des langages et des bases de données refusent un nom qui commence par un nombre. Ajoutez une lettre ou un mot devant si l'expression commence par un chiffre.
Attendre que les mots réservés soient gérés
Une expression comme class ou order peut être un mot réservé dans votre langage ou en SQL. La page ne le sait pas, et il vous faut vérifier.
Acronymes
Un acronyme à l'intérieur d'un nom en camelCase, comme parseHTMLString, peut être coupé en parse_h_t_m_l_string ou en parse_html_string selon la règle. Vérifiez que le résultat est ce que vous voulez.
Noms très longs
Les bases de données et les systèmes de fichiers imposent des limites de longueur. Une longue expression transformée en nom peut en rencontrer une. Raccourcissez la formulation avant de convertir.
Questions que l'on se pose avant de convertir
Que devient la ponctuation ?
Elle est traitée comme une limite entre les mots et n'est pas reportée.
Les nombres sont-ils conservés ?
Oui, comme des mots à part, séparés par des tirets bas.
Gère-t-elle une entrée en camelCase ?
Oui. Une majuscule à l'intérieur d'un mot marque une coupe ; fooBar devient donc foo_bar.
Puis-je l'utiliser pour d'autres langues ?
Oui, avec les règles de la langue de la page. Les écritures sans espaces, comme le chinois et le japonais, reviennent comme un seul mot.
Mon texte est-il envoyé ?
Non. Ce que vous tapez ici n'est jamais envoyé nulle part ; un brouillon, un mot de passe ou le nom d'un client est donc aussi en sécurité ici que dans un éditeur de texte.
Comment obtenir des traits d'union à la place ?
Avec Convertir le texte en kebab-case.
Un exemple détaillé
Supposons que vous construisiez une petite base de données pour une bibliothèque et que le personnel vous ait envoyé les titres de colonnes de son tableur : Book Title, Author's Last Name, Year Published (YYYY), ISBN-13. Vous convertissez chacun à son tour et lisez book_title, author_s_last_name, year_published_yyyy et isbn_13. L'apostrophe a rendu la colonne de l'auteur peu nette ; vous raccourcissez donc l'original en Author Last Name et reconvertissez : author_last_name. La colonne de l'année est plus claire sans la note de format ; vous gardez donc year_published. Quatre noms de colonnes nets, écrits en une minute, chacun un nom que la base de données acceptera.
Une courte liste de contrôle
Avant de convertir
Écrivez l'expression en mots simples, sans notes entre parenthèses. Vérifiez que la cible accepte les tirets bas et les accents.
Pendant la conversion
Collez l'expression, regardez les coupes et assurez-vous que le nom commence par une lettre.
Après la conversion
Vérifiez la longueur, vérifiez les mots réservés et gardez une trace de l'expression d'origine, pour que le nom puisse être rattaché à son sens.
Erreurs courantes
Utiliser le snake_case pour un texte que des gens liront
Il est fait pour les noms, non pour la prose.
Oublier ce que permet la cible
Les chiffres au début, les accents et les limites de longueur diffèrent d'un système à l'autre.
Convertir les acronymes sans regarder
Vérifiez les coupes qui les entourent.
Votre texte reste sur votre appareil
La conversion se fait en local. Votre texte est traité par votre propre navigateur et rien n'est envoyé nulle part. Il n'y a rien à supprimer ensuite et aucun compte à créer. C'est la manière simple de convertir un texte en snake_case.
Résumé
Pour convertir un texte en snake_case ici, collez une ligne et relisez-la avec les mots découpés, mis en minuscules et joints par des tirets bas. Une ligne déjà écrite en camelCase est coupée là aussi : fooBar devient donc foo_bar. La page ne conserve pas la ponctuation : virgules, points et tirets sont des limites entre les mots, non des caractères à reporter, ce que vous voulez pour un nom de fichier ou une colonne de base de données et non pour de la prose. Découper en mots demande des limites ; le chinois et le japonais, écrits sans espaces, reviennent donc comme un seul mot. Le passage en minuscules suit la langue de la page. Rien n'est envoyé.