Contatore di grafemi
Conti i caratteri che una persona vede in un testo, detti grafemi, insieme ai punti di codice e alle unità UTF-16: abc dà 3, 3 e 3. I numeri si separano con lettere accentate ed emoji formate da più pezzi. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Testo
- abc
- Grafemi
- 3
- Punti di codice
- 3
- Unità UTF-16
- 3
Conti i caratteri percepiti dall'utente (cluster di grafemi estesi) nel testo Unicode. Intento di ricerca: conteggio grafemi / conteggio caratteri unicode. Non servono chiamate di rete, semi casuali né stato server per una risposta corretta.
Come funziona
Conti i caratteri percepiti dall'utente (cluster di grafemi estesi) nel testo Unicode. I grafemi usano Intl.Segmenter quando disponibile; vengono riportati anche i code point e le unità UTF-16. L'implementazione è JavaScript puro, senza servizi esterni.
Non servono chiamate di rete, semi casuali né stato server per una risposta corretta. I lavori falliti non vengono fatturati. Le landing puntano all'intento di ricerca dichiarato con parole chiave precise.
Preferisca unità e intervalli espliciti alla coercizione silenziosa di tipi errati. Quando un campo è opzionale, i valori predefiniti sono documentati in params e riportati nella
Input, limiti e arrotondamento
I decimali opzionali usano half-up una sola volta. Gli output ripetono gli input chiave così l'automazione può registrare il contesto completo di ogni chiamata. Non servono chiamate di rete, semi casuali né stato server per una risposta corretta.
I lavori falliti non vengono fatturati. Le landing puntano all'intento di ricerca dichiarato con parole chiave precise. Preferisca unità e intervalli espliciti alla coercizione silenziosa di tipi errati.
Quando
Quando usarlo
Lo usi quando l'intento di ricerca corrisponde al nome della calcolatrice e le serve una risposta riproducibile per insegnamento, operazioni finanziarie, GIS, strumenti di testo o storia delle unità. Conti i caratteri percepiti dall'utente (cluster di grafemi estesi) nel testo Unicode. Non servono chiamate di rete, semi casuali né stato server per una risposta corretta.
I lavori falliti non vengono fatturati. Le landing puntano all'intento di ricerca dichiarato con parole chiave precise. Preferisca unità e intervalli espliciti alla coercizione silenziosa di tipi errati.
Quando un campo è opzionale, i valori predefiniti sono documentati in
Domande frequenti
Chiama la rete?
No. Tutta la matematica e le trasformazioni di testo sono locali e deterministiche.
Chi ne è l'autore?
Aspire (elon@forhosting.com), consegna solo EN; Nitro idrata i locale.
Che cos'è un grafema?
È ciò che un lettore percepisce come un solo carattere. Il nome tecnico è cluster di grafemi esteso: una lettera con il suo accento o un'emoji composta da più pezzi conta come un grafema, anche se è memorizzata in più parti.
Perché compaiono tre numeri diversi?
Perché ognuno risponde a una domanda diversa. I grafemi sono i caratteri che una persona vede, i punti di codice sono le unità Unicode sottostanti e le unità UTF-16 sono i pezzi che molti programmi contano quando misurano un testo.
Quale numero usare per un limite di lunghezza?
I grafemi, quando il limite è pensato per le persone, come un nome visualizzato o una breve didascalia, perché coincidono con ciò che si percepisce. Se il limite lo applica un programma, confronti il numero che quel programma usa davvero.
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/text/grapheme-count \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"👨👩👧👦"}'const res = await fetch("https://api.kit.forhosting.com/text/grapheme-count", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "👨👩👧👦"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/grapheme-count",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "👨👩👧👦"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/grapheme-count", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"👨👩👧👦"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"👨👩👧👦"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/grapheme-count", 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
{
"text": "👨👩👧👦"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.grapheme_count",
"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
La calcolatrice è gratuita nel browser, deterministica e identica sul percorso API. Gli input sono convalidati prima di qualsiasi aritmetica, così i payload non validi falliscono con invalid_input. L'arrotondamento half-up viene applicato una sola volta dai risultati IEEE grezzi quando si richiedono i decimali. Usi lo stesso contratto JSON da fogli di calcolo, CMS
Come funziona
La calcolatrice è gratuita nel browser, deterministica e identica sul percorso API. Gli input sono convalidati prima di qualsiasi aritmetica, così i payload non validi falliscono con invalid_input. L'arrotondamento half-up viene applicato una sola volta dai risultati IEEE grezzi quando si richiedono i decimali. Usi lo stesso contratto JSON da fogli di calcolo, hook CMS, automazione o demo didattiche.
Input, limiti e arrotondamento
Fornisca i parametri obbligatori come numeri o stringhe JSON come documentato. Tipi non validi, campi obbligatori mancanti o valori fuori intervallo sollevano invalid_input con un messaggio chiaro. La calcolatrice è gratuita nel browser, deterministica e identica sul percorso API. Gli input sono convalidati prima di qualsiasi aritmetica, così i payload non validi falliscono con invalid_input. L'arrotondamento half-up viene applicato una sola volta dai risultati IEEE grezzi quando si richiedono i decimali. Usi lo stesso contratto JSON da fogli di calcolo, hook CMS, automazione o demo didattiche.
Quando usarlo
La calcolatrice è gratuita nel browser, deterministica e identica sul percorso API. Gli input sono convalidati prima di qualsiasi aritmetica, così i payload non validi falliscono con invalid_input. L'arrotondamento half-up viene applicato una sola volta dai risultati IEEE grezzi quando si richiedono i decimali. Usi lo stesso contratto JSON da fogli di calcolo, hook CMS, automazione o demo didattiche.
Casi di integrazione
Controllo rapido
Incolli i valori nel widget gratuito e li confronti con un foglio di calcolo.
Automazione
Chiami l'API con lo stesso contratto JSON da n8n, script o CMS.
Insegnamento
Mostri la formula e gli esempi golden fissati senza software proprietario.
Domande tecniche
È gratis nel browser?
Sì. Il tier A viene eseguito interamente lato client con lo stesso nucleo dell'API.
Cosa succede con un input errato?
L'handler solleva invalid_input; i lavori falliti non vengono fatturati.
Posso usarlo dall'API?
Sì. Invii gli stessi campi JSON documentati in params.