Générateur de regex
Une expression régulière, ou regex, décrit un motif de texte à rechercher : un code postal, un e-mail, une date. L’écrire à la main demande de connaître une syntaxe aride. Cet outil part de votre description en français et rédige la regex correspondante, avec une courte explication de ce qu’elle fait.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
De la phrase au motif
Plutôt que d’affronter une syntaxe pleine de crochets et d’antislashs, vous décrivez le besoin en clair : « un numéro de téléphone français », « une date au format jour, mois, année », « un code postal à cinq chiffres ». L’outil traduit cette intention en expression régulière et l’accompagne d’une explication. Vous récupérez un motif à coller dans votre éditeur, votre tableur ou votre code, sans avoir mémorisé les règles de la syntaxe.
Vérifier sur vos exemples
Une regex générée reste à éprouver sur vos données réelles. Une description peut être comprise de plusieurs façons, et un cas limite — un numéro avec indicatif, une date incomplète — révèle vite ses limites. Donnez quelques exemples qui doivent correspondre et d’autres qui ne doivent pas, puis testez le motif dessus. Cette étape, rapide, évite la mauvaise surprise d’une expression qui laisse passer ou rejette ce qu’il ne fallait pas.
Un service par IA, facturé à l’usage
La génération s’appuie sur un modèle de langage et se facture à l’usage : $0.003 la requête plus $0.0135 par expression produite, en dollars US, sans abonnement ni compte. L’outil s’utilise depuis cette page comme par API et, à terme, par d’autres canaux. Votre description transite par un canal chiffré le temps du traitement ; elle sert à produire la regex, pas à autre chose, et n’est pas conservée ensuite.
Cas d’usage
Validation de formulaire
Un développeur obtient en une phrase le motif qui contrôle un code postal français dans son formulaire.
Nettoyage de tableur
Sophie Nguyen génère une regex pour repérer les numéros de téléphone mal formatés d’un export.
Recherche dans du texte
Thomas Rousseau crée un motif pour extraire toutes les dates d’un long document.
Filtre de journaux
Studio Lumen SAS décrit en clair les lignes de journal à isoler, et récupère l’expression à appliquer.
Questions fréquentes
Dans quel langage la regex fonctionne-t-elle ?
Le motif suit la syntaxe des expressions régulières commune à la plupart des langages et éditeurs. De légères différences existent d’un outil à l’autre ; l’explication fournie aide à l’ajuster si besoin.
Pourquoi vérifier la regex sur mes exemples ?
Parce qu’une description admet plusieurs lectures. Tester le motif sur des cas qui doivent correspondre et d’autres qui ne doivent pas confirme qu’il fait exactement ce que vous attendez.
Ma description est-elle conservée ?
Non. Elle transite par un canal chiffré le temps de produire la regex, puis n’est pas gardée. Elle sert uniquement à générer le motif demandé.
Combien coûte une génération ?
$0.003 la requête plus $0.0135 par expression produite, en dollars US, sans abonnement. L’achat est direct, sans compte.
L’outil explique-t-il le motif qu’il produit ?
Oui. Chaque regex est accompagnée d’une explication en français de ce qu’elle reconnaît, pour que vous la compreniez et puissiez la retoucher plutôt que de l’appliquer à l’aveugle.
Puis-je décrire un motif complexe ?
Oui, en restant précis : indiquez les cas à accepter et à refuser. Plus la description est claire et illustrée d’exemples, plus le motif obtenu tombe juste.
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/dev/regex-generate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"items":["valor-1","valor-2"]}'const res = await fetch("https://api.kit.forhosting.com/dev/regex-generate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"items": [
"valor-1",
"valor-2"
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/regex-generate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"items": [
"valor-1",
"valor-2"
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/regex-generate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"items":["valor-1","valor-2"]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"items":["valor-1","valor-2"]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/regex-generate", 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
{
"items": [
"valor-1",
"valor-2"
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.regex_generate",
"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. |
422 | task_failed | La tâche a échoué : elle ne vous est pas facturée. |