Supprimez la ponctuation d’un texte en ligne
Supprimer la ponctuation transforme un texte encombré en une suite propre de lettres, de nombres et d’espaces.
Lancer gratuitement
L’outil retire virgules, points, guillemets, parenthèses, tirets, signes monétaires, emoji et autres symboles, tout en conservant les mots et valeurs numériques des écritures prises en charge par Unicode. L’opération est déterministe, sans réseau ni modèle de langage, et respecte les espaces et retours à la ligne d’origine. Elle convient donc à la tokenisation, à l’indexation, aux fréquences lexicales, à la déduplication et aux comparaisons simples.
Ce que le nettoyage conserve ou retire
Le traitement examine le contenu caractère Unicode par caractère. Il conserve les lettres, les marques combinatoires qui composent certains caractères accentués, les nombres et les espaces blancs. Tout le reste disparaît : virgules, points, apostrophes, guillemets, deux-points, points-virgules, parenthèses, barres et tirets, mais aussi signes monétaires, opérateurs, pictogrammes et emoji. Les espaces, tabulations et retours à la ligne restent exactement à leur place ; ils ne sont ni regroupés ni supprimés. Des espaces doublés peuvent donc subsister après le retrait de signes voisins. Ce choix évite de modifier les positions ou la structure du document. Grâce aux catégories Unicode, les écritures autres que latines et les accents représentés séparément restent intacts.
Préparer un texte pour son analyse
Collez ou envoyez la source dans le champ text, puis lancez l’opération. La réponse contient un seul champ text avec le résultat filtré, directement exploitable par un segmenteur, une conversion en minuscules, un compteur de mots ou un index. Choisissez soigneusement l’ordre des étapes. Retirer la ponctuation avant la segmentation permet de faire correspondre un mot suivi d’une virgule avec le même mot nu. Les apostrophes et traits d’union demandent toutefois une décision : leur suppression soude les parties. Pour obtenir des unités séparées, remplacez d’abord certains signes par des espaces. L’algorithme ne détecte pas la langue, ne corrige pas l’orthographe, ne translittère pas et ne change pas la casse. Une entrée donnée produit toujours la même sortie.
Intégrer le résultat à une automatisation
Pour un besoin ponctuel, l’exécuteur du navigateur applique exactement la même transformation déterministe que l’API. Dans un pipeline, envoyez chaque chaîne comme un élément et récupérez le champ text. Une requête API coûte $0.002 ; aucun tarif variable ne s’ajoute, car l’unité déclarée est l’élément. Conservez la source lorsque la ponctuation porte une information utile. Les séparateurs décimaux, la syntaxe de programmation, les signes des adresses électroniques, les séparateurs d’URL et les limites de phrase disparaissent également. Le résultat est donc un dérivé d’analyse, non une copie réversible. L’outil conserve les espaces sans les normaliser, ne retire pas les signes diacritiques, ne change pas la casse et peut légitimement renvoyer une chaîne vide si l’entrée ne contient que des symboles.
Cas d’usage
Préparer des unités à compter
Retirez les signes qui feraient apparaître un même mot sous plusieurs formes dans une table de fréquences.
Nettoyer avant l’indexation
Produisez une représentation faite de lettres et de nombres avant d’ajouter des libellés ou documents à un index simple.
Normaliser les données comparées
Enlevez symboles décoratifs et ponctuation avant d’uniformiser la casse ou les espaces dans une procédure de rapprochement.
Questions fréquentes
Quels caractères sont conservés ?
Les lettres Unicode, marques combinatoires, nombres et espaces blancs sont gardés ; ponctuation et symboles sont retirés.
Le traitement accepte-t-il d’autres langues ?
Oui. Il s’appuie sur les catégories Unicode et conserve les lettres et nombres des écritures compatibles.
Les emoji et signes monétaires disparaissent-ils ?
Oui. Ce sont des symboles et non des lettres, des nombres ou des espaces ; ils sont donc retirés.
Les espaces et retours à la ligne sont-ils regroupés ?
Non. Ils restent inchangés. Ajoutez une autre étape si vous souhaitez les réduire ou les rogner.
Quel est le prix d’une requête API ?
Chaque requête coûte $0.002. La même opération déterministe est également proposée dans le navigateur.
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/remove-punctuation \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello, world! Room #42 costs $9."}'const res = await fetch("https://api.kit.forhosting.com/str/remove-punctuation", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello, world! Room #42 costs $9."
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/remove-punctuation",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello, world! Room #42 costs $9."
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/remove-punctuation", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello, world! Room #42 costs $9."}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello, world! Room #42 costs $9."}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/remove-punctuation", 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
{
"text": "Hello, world! Room #42 costs $9."
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.remove_punctuation",
"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. |