Codificatore Refined Soundex
Robert diventa R9196: la prima lettera resta, ogni suono consonantico diventa una cifra di una tabella più fine e nulla viene tagliato a quattro caratteri, così i cognomi lunghi conservano la parte finale. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Nome
- Robert
- Codice
- R9196
- Normalizzato
- ROBERT
- Lunghezza
- 6
Il Refined Soundex è una variante di indicizzazione fonetica pensata per un abbinamento dei nomi più fine e un raggruppamento in stile correttore ortografico rispetto al Soundex americano classico. Conserva la prima lettera del nome, mappa ogni lettera tramite una tabella raffinata di consonanti 0–9, collassa solo le cifre identiche adiacenti e—in modo critico—non tronca mai il risultato a quattro caratteri. Quel codice a lunghezza piena mantiene cifre discriminative per cognomi più lunghi, così Washington, Ashcraft e Pfister conservano più segnale di una chiave lettera più tre cifre. Questo codificatore refined soundex accetta una stringa di nome non vuota, rimuove i non-lettere, applica la mappa raffinata in inglese americano usata da librerie di riferimento come Apache Commons Codec e restituisce il codice con la forma normalizzata effettivamente codificata.
Come il Refined Soundex costruisce un codice fonetico a lunghezza piena
Il Refined Soundex inizia convertendo il nome in maiuscolo e conservando solo le lettere latine da A a Z. Cifre, spazi, trattini, apostrofi e punteggiatura vengono rimossi affinché un campo modulo con spazi in eccesso codifichi ancora in modo pulito. La prima lettera di quella stringa normalizzata viene emessa come carattere iniziale del codice.
Poi ogni lettera—inclusa la prima—viene mappata tramite la tabella raffinata di cifre: B e P mappano a 1; F e V a 2; C, K e S a 3; G e J a 4; Q, X e Z a 5; D e T a 6; L a 7; M e N a 8; R a 9.
Le vocali A, E, I, O, U e le lettere Y, H e W mappano a 0 e non aggiungono una cifra, ma aggiornano la memoria del mapping precedente così che una sequenza della stessa cifra si interrompa quando interviene uno zero. Le lettere adiacenti che condividono la stessa cifra non zero contribuiscono una sola volta. A differenza del Soundex americano classico, non c’è padding a quattro né troncamento rigido: ogni cifra codificata rimanente resta nel risultato.
Dove un codice Refined Soundex completo è utile
I notebook di entity resolution usano refined soundex come chiave di blocco quando il Soundex classico a quattro caratteri collide in modo troppo aggressivo sui cognomi comuni e si vogliono codici più lunghi senza passare a Metaphone. Prototipi di correttore e di type-ahead possono raggruppare cognomi quasi uguali per prefissi raffinati condivisi distinguendo ancora code più lunghe che il Soundex americano avrebbe troncato. Strumenti CRM e di customer support possono pre-raggruppare nomi simili per revisione umana senza montare un motore completo di ricerca fuzzy.
Demo di aula di algoritmi fonetici storici e di libreria necessitano di un oracolo deterministico che gli studenti possano richiamare dal browser mentre l’insegnante contrasta la mappa raffinata con la tabella classica del censimento alla lavagna. Progetti di genealogia che già conoscono Soundex possono aggiungere una seconda colonna di codici raffinati quando le grafie di liste passeggeri e censimenti divergono dopo la terza cifra. I fallimenti di validazione non consumano mai saldo dopo il rifiuto del motore.
Casi d'uso
Blocco cognomi più fine del Soundex classico
Raggruppi nomi di famiglia simili con un codice raffinato a lunghezza piena quando il Soundex americano lettera più tre cifre collide troppo spesso sui cognomi comuni.
Pre-abbinamento fuzzy dei nomi in CRM
Raggruppi i cognomi dei clienti per revisione umana usando gruppi di cifre raffinate senza installare uno stack completo di entity resolution a ogni invio di form.
Demo di aula di indici fonetici
Mostri agli studenti che Robert e Rupert condividono R9196 mentre i form vuoti falliscono in modo chiaro, e contrasti codici raffinati a lunghezza piena con il Soundex classico a quattro caratteri.
Domande frequenti
Come si codifica un nome con Refined Soundex?
Il campo code della risposta contiene il valore Refined Soundex completo (R9196 per Robert).
In che modo il Refined Soundex differisce dal Soundex americano classico?
Il Refined Soundex usa una mappa di cifre consonantica più fine e conserva ogni lettera codificata invece di riempire o troncare a una lettera più tre cifre. Il Soundex classico vive su un’altra landing e capacità.
Il codificatore Refined Soundex è gratuito?
Lo strumento browser gira gratis sul Suo dispositivo.
Il Refined Soundex è uguale a NYSIIS o Metaphone?
No. Questo strumento implementa solo Refined Soundex (prima lettera più la sequenza completa di cifre raffinate). NYSIIS, Metaphone, Double Metaphone e gli alfabeti di spelling NATO sono algoritmi e landing diversi.
Quali lettere condividono la stessa cifra?
B e P valgono 1, F e V 2, C, K e S 3, G e J 4, Q, X e Z 5, D e T 6, L 7, M e N 8, R 9. Le vocali e le lettere H, W e Y valgono zero e non aggiungono cifre.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/enc/refined-soundex \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"Robert"}'const res = await fetch("https://api.kit.forhosting.com/enc/refined-soundex", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"name": "Robert"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/refined-soundex",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"name": "Robert"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/refined-soundex", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"name":"Robert"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"name":"Robert"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/refined-soundex", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"name": "Robert"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.refined_soundex",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Ingresso vuoto, campo name assente o stringa senza lettere latine A–Z fallisce con invalid_input per segnalare moduli vuoti invece di inventare un codice. Il percorso gratuito del browser e l’API prepagata condividono la stessa logica parse pura, così demo, test e pipeline di produzione concordano sempre su Robert versus Rupert.
Contratto di ingresso, flag di vuoto, forma della risposta e errori comuni
Non confonda questa landing con il Soundex americano classico: quello strumento riempie e tronca a una lettera più tre cifre e usa un raggruppamento di cifre più grossolano; il Refined Soundex usa una mappa consonantica suddivisa (ad esempio B/P versus F/V, e C/K/S versus G/J versus Q/X/Z) e conserva ogni lettera codificata per una discriminazione più fine. Preferisca questa pagina quando l’intento di ricerca è codificatore refined soundex, codice refined soundex o indice fonetico di nomi a lunghezza piena; soundex classico, NYSIIS, spelling NATO e strumenti di cifratura generali rispondono a intenti diversi e restano su pagine separate. Le lettere accentate fuori dalla A–Z pura vengono rimosse con gli altri non-lettere, quindi fornisca una forma normalizzata ASCII se i dati sorgente usano diacritici e ha bisogno che quelle lettere partecipino al codice. Invii un corpo JSON con il campo stringa obbligatorio name impostato sul nome di persona o famiglia che desidera codificare. Name assente, valore non stringa, stringa di lunghezza zero, solo spazi o stringa senza lettere latine sollevano invalid_input e non vengono addebitati sull’API prepagata—è il percorso di flag di ingresso vuoto promesso dal prodotto, espresso come errore duro di validazione e non come corpo di successo con codice vuoto. In caso di successo la risposta include code (il valore Refined Soundex completo), method uguale a refined_soundex affinché i router a valle possano ramificare senza annusare le forme, name che ripete la stringa originale, normalized con la sequenza A–Z in maiuscolo realmente codificata, empty sempre false in successo, e length uguale al conteggio caratteri originale prima del filtraggio.
Dove un’API Refined Soundex genera valore e come funziona il prezzo
Usi lo strumento gratuito nel browser per controlli puntuali e didattica; usi l’API KIT prepagata quando un backend, una funzione serverless o un SDK necessitano di un contratto stabile sotto saldo a $0.002 per elemento riuscito. Mantenga i payload a lunghezze di nome ordinarie adatte a una chiamata item in un Worker isolate: questo strumento è per nomi ed etichette corte, non per documenti multi-megabyte. Lo abbini ad altre utilità di testo solo quando un passo successivo necessita di un diverso schema fonetico o di cifratura; mantenga il refined soundex sulla propria landing affinché l’intento SEO resti nitido e la guida resti onesta su ciò che un codice raffinato a lunghezza piena può e non può fare.
Domande tecniche
Cosa succede se il nome è vuoto?
La richiesta fallisce con invalid_input. Ingresso assente, vuoto o senza lettere viene segnalato come empty e non viene addebitato sull’API prepagata.