Rechercher et remplacer multiple
Remplacez ACME Corp par Nova Labs, ACME par Nova et l'adresse du support en une fois : 3 paires, 3 remplacements, appliqués dans l'ordre de votre liste. Placez les expressions longues en premier ; jusqu'à 100 paires, toutes littérales. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Les rédacteurs, les équipes de localisation et les pipelines d'automatisation ont souvent besoin de plus qu'un simple rechercher-remplacer : un renommage de marque, un pack de glossaire et un ensemble de jetons de modèle doivent s'appliquer en un seul passage cohérent. Un indicateur optionnel insensible à la casse couvre les brouillons mixtes afin que Hello et HELLO changent sans lister de variantes. Les termes de recherche vides dans toute paire échouent avec une entrée invalide, afin que les tâches en masse n'exécutent jamais un no-op silencieux.
Ce que signifie rechercher et remplacer multiple et quand l'utiliser
Rechercher et remplacer multiple signifie parcourir une liste ordonnée de termes de recherche et écrire un remplacement pour chaque occurrence non chevauchante de chaque terme, puis alimenter la chaîne éditée dans la paire suivante jusqu'à la fin de la liste. La correspondance est littérale : points, crochets et autres métacaractères d'expressions régulières sont du texte brut, afin que les packs de glossaire restent prévisibles pour les non-développeurs et pour les pipelines qui ne doivent jamais être surpris par des caractères spéciaux.
Préférez ce calculateur lorsque l'intention de recherche est rechercher et remplacer multiple, substitutions en masse, appliquer plusieurs paires de remplacement, réécriture de pack terminologique ou remplir de nombreux jetons de modèle en un seul passage. Les sources typiques incluent des textes marketing qui renomment une famille de produits, des macros d'assistance qui mettent à jour plusieurs URL à la fois, des guides de style de localisation qui échangent une douzaine de phrases interdites et des fragments de configuration où des placeholders tels que company, year et plan se résolvent ensemble.
L'ordre des paires est intentionnel : réécrivez les phrases longues avant les sous-chaînes courtes pour qu'ACME Corp devienne Nova Labs avant qu'une règle ACME vers Nova ultérieure ne s'exécute, évitant un écrasement partiel. La correspondance optionnelle insensible à la casse plie la casse des lettres pour chaque paire afin qu'un seul pack couvre les brouillons mixtes. N'utilisez pas ce produit si vous avez besoin de groupes de capture, de lookarounds ou d'un moteur regex multiligne complet — c'est une intention différente servie par des outils regex dédiés.
Une page à une seule paire existe pour un terme ; cette page est le flux multi-paires.
Cas d’usage
Packs de marque et de terminologie
Appliquez un glossaire d'anciens noms de produits, d'entités légales et de formes courtes en un passage ordonné pour que les phrases longues se réécrivent avant les sous-chaînes courtes et que chaque document reçoive le même ensemble terminologique.
Questions fréquentes
Que se passe-t-il si un terme de recherche est vide ?
Un find vide dans toute paire est rejeté afin que les pipelines n'exécutent jamais un no-op silencieux ni le classique piège de remplacer la chaîne vide partout ; ces échecs ne sont pas facturés.
Dans quel ordre les paires sont-elles appliquées ?
Strictement séquentiel : la première paire édite le texte original, la deuxième édite ce résultat, et ainsi de suite. Les paires ultérieures peuvent réécrire le texte introduit par des remplacements antérieurs — listez les phrases longues avant les courtes lorsque l'ordre compte.
L'outil de recherche et remplacement multiple est-il gratuit ?
L'outil du navigateur s'exécute gratuitement sur votre appareil.
Le find prend-il en charge les expressions régulières ?
Non. Chaque terme de recherche est toujours traité comme une chaîne littérale. Points, crochets et autres métacaractères regex se correspondent eux-mêmes afin que les packs de glossaire restent prévisibles pour les rédacteurs et les tâches en masse.
Combien de paires peut-on appliquer en une fois ?
Jusqu'à 100 paires en un seul passage. Chaque paire indique combien de fois elle a servi et le total des remplacements s'affiche aussi : vous voyez quelle entrée du glossaire a agi et laquelle n'a rien trouvé.
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/replace-multiple \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello ACME Corp. Welcome to ACME. Contact support@acme.example.","replacements":[{"find":"ACME Corp","replace":"Nova Labs"},{"find":"ACME","replace":"Nova"},{"find":"support@acme.example","replace":"hello@nova.example"}]}'const res = await fetch("https://api.kit.forhosting.com/str/replace-multiple", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello ACME Corp. Welcome to ACME. Contact support@acme.example.",
"replacements": [
{
"find": "ACME Corp",
"replace": "Nova Labs"
},
{
"find": "ACME",
"replace": "Nova"
},
{
"find": "support@acme.example",
"replace": "hello@nova.example"
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/replace-multiple",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello ACME Corp. Welcome to ACME. Contact support@acme.example.",
"replacements": [
{
"find": "ACME Corp",
"replace": "Nova Labs"
},
{
"find": "ACME",
"replace": "Nova"
},
{
"find": "support@acme.example",
"replace": "hello@nova.example"
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/replace-multiple", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello ACME Corp. Welcome to ACME. Contact support@acme.example.","replacements":[{"find":"ACME Corp","replace":"Nova Labs"},{"find":"ACME","replace":"Nova"},{"find":"support@acme.example","replace":"hello@nova.example"}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello ACME Corp. Welcome to ACME. Contact support@acme.example.","replacements":[{"find":"ACME Corp","replace":"Nova Labs"},{"find":"ACME","replace":"Nova"},{"find":"support@acme.example","replace":"hello@nova.example"}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/replace-multiple", 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 ACME Corp. Welcome to ACME. Contact support@acme.example.",
"replacements": [
{
"find": "ACME Corp",
"replace": "Nova Labs"
},
{
"find": "ACME",
"replace": "Nova"
},
{
"find": "support@acme.example",
"replace": "hello@nova.example"
}
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.replace_multiple",
"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
Cet outil de recherche et remplacement multiple prend votre chaîne source plus une liste ordonnée de paires trouver/remplacer, applique chaque paire en séquence avec une correspondance littérale et renvoie un contrat JSON stable avec le texte final, les comptes de correspondances par paire et le total des substitutions.
Ce que signifie rechercher et remplacer multiple et quand l'utiliser
Une chaîne find vide dans toute paire lève invalid_input, ce qui protège les tâches en masse du classique piège de remplacer la chaîne vide partout.
Contrat d'entrée, paires ordonnées et lecture de la réponse
Si replace est absent, la chaîne vide est utilisée, ce qui supprime chaque correspondance pour cette paire. Dans chaque paire, find accepte aussi search, needle, from ou old ; replace accepte replacement, with, to ou new. Au plus cent paires sont acceptées dans une seule requête. Envoyez un corps JSON avec le champ chaîne requis text égal à la source que vous souhaitez éditer et le champ tableau requis replacements avec au moins un objet ayant une chaîne find non vide et une chaîne replace optionnelle. L'option case_insensitive vaut false par défaut pour une casse exacte ; mettez-la à true lorsque les brouillons mixtes doivent encore correspondre sur chaque paire. Des alias sont acceptés pour les clients anciens : text aussi comme input, value, s, content ou source ; replacements comme pairs, rules ou substitutions ; case_insensitive comme ignore_case, ci ou insensitive. Text manquant, replacements manquant, liste non tableau, liste vide, paire non objet, find non chaîne ou find vide lèvent invalid_input avec un message qui nomme le problème, et ces échecs ne sont pas facturés sur l'API prépayée. Utilisez result seul lorsque vous n'avez besoin que de la chaîne nettoyée ; utilisez le count par paire lorsqu'un pipeline journalise quelle entrée de glossaire a tiré ; utilisez total_count lorsqu'un tableau de bord suit le volume d'éditions. Gardez les charges utiles à des tailles de phrase, paragraphe et document court adaptées à un isolate Worker plutôt qu'à des dumps de plusieurs mégaoctets.
Usage de l'API, tarification, workflows et limites pratiques
Appelez l'outil gratuit de recherche et remplacement multiple dans le navigateur pour le nettoyage de collages, les essais de glossaire, les démos en classe, le QA de contenu et les renommages multi-jetons sans installer d'utilitaire de bureau ni écrire des snippets imbriqués de split-join dans chaque langage. Un autre workflow remplit des jetons de modèle tels que company, product et plan code en listant chaque paire dans une seule requête, ou supprime des marqueurs obsolètes en envoyant des valeurs replace vides. Associez ce point de terminaison au tidy d'espaces ou aux convertisseurs de casse lorsque l'étape suivante est le style, mais gardez rechercher et remplacer multiple comme landing propre afin de ne pas mélanger l'intention SEO avec les outils à une paire ou les playgrounds regex. N'attendez pas une réécriture consciente du HTML qui ignore les balises, des champs de fusion de documents structurés, une résolution parallèle par plus longue correspondance ni une collation spécifique de locale au-delà de l'ignore-case standard — ce sont d'autres problèmes. Utilisez l'API KIT prépayée lorsqu'un CMS, un job ETL, un backend de formulaires, un support ou un client mobile a besoin de la même transformation multi-paires sous solde à $0.002 par élément réussi ; les échecs de validation ne consomment jamais le solde après le rejet du moteur. Un workflow typique envoie un pack de renommage de marque qui réécrit d'abord le nom légal complet, puis les formes courtes, puis les adresses de contact, et vérifie total_count pour confirmer que chaque occurrence attendue a été mise à jour. Les auteurs de SDK peuvent documenter text et replacements comme champs requis et montrer un exemple de succès multi-paires plus une erreur de find vide pour que les intégrateurs voient les deux faces du contrat.
Cas d'intégration
Remplissage de modèles multi-jetons
Résolvez plusieurs placeholders —company, product, plan, year— dans un brouillon ou une macro en listant chaque paire trouver/remplacer au lieu d'enchaîner des appels API à une seule paire.
QA et fixtures déterministes
Les harnais de test figent les sorties golden multi-paires afin que les refactors qui changent l'ordre des paires, le rejet de find vide ou la correspondance insensible à la casse échouent immédiatement en intégration continue.
Questions techniques
Comment exécuter une recherche et un remplacement multiples avec cet outil ?
Envoyez un JSON avec text égal à votre chaîne source et replacements égal à un tableau d'objets, chacun avec un find non vide et un replace optionnel. Les paires s'exécutent dans l'ordre. La réponse inclut result, les comptes par paire et total_count.