Contare i numeri nel testo
Contare i numeri nel testo analizza la prosa comune, indica quanti gruppi numerici distinti contiene e restituisce le corrispondenze esatte nell’ordine di lettura.
Esegui gratis nel browser
Riconosce interi, valori con segno, decimali standard e decimali che iniziano con un punto, senza interpretare le parole circostanti. È utile quando Lei desidera un riepilogo rapido, un passaggio di estrazione leggero o un controllo ripetibile prima di inviare il testo a un flusso di dati più ampio. Le stesse regole deterministiche vengono applicate ogni volta, sia che l’input sia una frase, un rapporto, un estratto di log o una tabella incollata.
Che cosa viene riconosciuto come numero
Lo scanner considera ogni gruppo contiguo di interi o decimali come una corrispondenza. Riconosce valori interi come 42, valori con segno come -7 e +12, decimali comuni come 19.95 e decimali che iniziano con un punto come .75. Una sequenza di cifre resta unita: 2026 conta quindi una volta, non quattro. Il segno appartiene al numero quando compare immediatamente prima del gruppo numerico. Le corrispondenze mantengono testo e ordine originali, così Lei può verificare esattamente che cosa ha prodotto il totale. Le regole si concentrano intenzionalmente sulla notazione semplice di interi e decimali. Separatori delle migliaia, simboli di valuta, percentuali, unità e punteggiatura circostante non vengono normalizzati né interpretati. Per esempio, un simbolo monetario rimane fuori dalla corrispondenza mentre viene contato il gruppo numerico successivo. La notazione scientifica non viene unita in un valore speciale: i gruppi numerici visibili seguono lo stesso schema. Questa definizione ristretta offre risultati prevedibili per verifiche di contenuto e pipeline di estrazione, soprattutto quando la fonte mescola prosa, etichette e misure.
Come leggere e verificare il risultato
Invii una stringa di testo e legga count per il riepilogo. L’array matches elenca tutti i gruppi rilevati da sinistra a destra, conservando segni, punti decimali e cifre esattamente come scritti. Questo secondo campo agevola il controllo qualità: se un documento produce un totale inatteso, Lei può esaminare subito le corrispondenze e individuare una notazione non prevista. Il testo vuoto è valido e restituisce zero con un array vuoto; un campo assente o non di tipo stringa viene invece rifiutato come input non valido. La distinzione evita di scambiare dati mancanti per un documento privo di numeri. L’implementazione esegue un’unica scansione limitata e non usa la rete, modelli, interpretazione regionale né modifica il testo fornito. Chiamate ripetute con la stessa stringa producono pertanto lo stesso JSON. Durante l’integrazione, conservi l’elenco insieme al totale se serve tracciabilità. Se occorre solo una cifra per un pannello, utilizzi il totale e scarti l’elenco. Per formati numerici molto strutturati, faccia seguire al contatore un parser specifico del settore, anziché presumere che ogni stringa restituita sia già un valore aziendale convalidato.
Usare il conteggio nei flussi operativi
Il conteggio dei numeri è un segnale compatto adatto a molti controlli leggeri. I team editoriali possono confrontare bozze e confermare che un riepilogo basato sui dati contenga ancora la quantità prevista di cifre. Gli analisti possono esaminare note copiate prima di trasferire misure, mentre gli sviluppatori possono usare l’array come prima estrazione da log, ticket o esportazioni di testo. Nei sistemi di acquisizione, il risultato consente un instradamento semplice: un testo senza gruppi numerici può seguire un percorso narrativo, mentre uno con più gruppi può essere inviato a un’analisi approfondita. L’endpoint è utile anche nei test in cui un rapporto generato deve contenere una quantità stabile di elementi numerici benché cambino i valori. Ricordi che lo strumento conta la notazione, non il significato. Una data come 2026-07-25 contiene tre gruppi, perché la punteggiatura separa anno, mese e giorno. Anche una versione, un identificatore o un numero accanto a lettere può generare una corrispondenza. Questi comportamenti aiutano nell’estrazione generale, ma potrebbero non coincidere con ogni definizione semantica. Usi le evidenze restituite per applicare in seguito le regole del Suo dominio. Il browser è gratuito e le richieste API automatizzate usano il prezzo base visualizzato di $0.002.
Casi d'uso
Riassumere un rapporto
Conti i gruppi interi e decimali di un rapporto narrativo e controlli i valori esatti nell’ordine di lettura.
Controllare il testo estratto
Verifichi che un output OCR o note copiate contengano la quantità prevista di materiale numerico prima dell’analisi approfondita.
Testare contenuti generati
Accerti che un modello o aggiornamento generato contenga una quantità stabile di elementi numerici anche se i valori cambiano.
Domande frequenti
Quanto costa?
L’esecuzione nel browser su questa pagina è gratuita. Una richiesta API usa il prezzo base visualizzato di $0.002.
I decimali contano come un solo numero?
Sì. Un decimale standard come 12.5 o uno che inizia con il punto come .5 conta come un unico gruppo numerico.
I segni più e meno fanno parte delle corrispondenze?
Sì. Se il segno precede immediatamente le cifre o il punto decimale iniziale, viene conservato nella corrispondenza.
Che cosa succede con un testo vuoto?
Una stringa vuota è valida e restituisce zero e un array vuoto. Un campo assente o che non sia una stringa viene rifiutato.
Lo strumento comprende date, valute o notazione scientifica?
Non interpreta significato o formati regionali. Conta i semplici gruppi interi e decimali visibili e li restituisce affinché Lei li controlli.
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/str/count-numbers \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Revenue rose from 12.5 to 18 units across 3 regions."}'const res = await fetch("https://api.kit.forhosting.com/str/count-numbers", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Revenue rose from 12.5 to 18 units across 3 regions."
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/count-numbers",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Revenue rose from 12.5 to 18 units across 3 regions."
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/count-numbers", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Revenue rose from 12.5 to 18 units across 3 regions."}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Revenue rose from 12.5 to 18 units across 3 regions."}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/count-numbers", 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": "Revenue rose from 12.5 to 18 units across 3 regions."
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.count_numbers",
"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. |