Estrarre @menzioni dal testo
Incolli qualsiasi testo e riceva ogni @menzione una sola volta, nell'ordine in cui è comparsa: una nota che cita @Ada, @Linus e @ADA dà @Ada e @Linus, mentre team@example.com viene ignorato. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Estragga le @menzioni da messaggi, commenti, documenti e conversazioni esportate senza creare un parser personalizzato. La capacità analizza il testo semplice, restituisce una sola volta ogni menzione valida e conserva sia la grafia sia l’ordine della prima occorrenza. I nomi duplicati vengono confrontati senza distinguere maiuscole e minuscole, quindi @Alex e @ALEX producono un solo risultato. Sono supportati nomi con lettere e numeri Unicode, i domini delle e-mail vengono ignorati e, se il testo non contiene token corrispondenti, viene restituito un elenco di menzioni vuoto.
Trasformi il testo delle conversazioni in un elenco affidabile
Post social, note di progetto, trascrizioni dell’assistenza ed esportazioni di comunità spesso mescolano nomi utente e frasi comuni. Copiare i nomi manualmente richiede tempo, mentre una ricerca generica della chiocciola può raccogliere indirizzi e-mail o frammenti non validi. Questo estrattore esegue una scansione deterministica da sinistra a destra e restituisce un array pulito, pronto per la fase successiva dell’applicazione.
Un token inizia con @ e prosegue con lettere, numeri o trattini bassi Unicode. Il carattere prima della chiocciola deve essere un vero confine, non un altro carattere del nome né un’altra chiocciola. Pertanto, «chieda a @Mina_7» genera una menzione, mentre il dominio in «team@example.com» non viene scambiato per un utente.
La punteggiatura successiva conclude il token. Il risultato mantiene l’ordine della fonte e, se non trova corrispondenze, contiene un elenco vuoto invece di un errore o di un segnaposto.
Comprenda la deduplicazione indipendente dalle maiuscole
La stessa persona può essere citata più volte con combinazioni diverse di maiuscole, soprattutto quando il contenuto proviene da più sistemi. Questa capacità confronta i token ignorando tali differenze: @River, @RIVER e @river valgono come una sola menzione. Conserva esattamente la prima forma incontrata invece di convertire ogni risultato in minuscolo.
In questo modo, le elaborazioni successive ricevono un elenco deduplicato e le interfacce mantengono la grafia apparsa nel contenuto. Anche l’ordine della prima occorrenza rimane stabile. L’algoritmo non usa la rete né modelli probabilistici.
Riconosce solo la sintassi: non conferma l’esistenza di un account, non apre profili e non stabilisce se grafie differenti appartengano alla stessa persona.
Applichi regole chiare nelle automazioni
Per integrazioni prevedibili, invii un oggetto con una stringa di testo entro il limite pubblicato. Una stringa vuota è valida e restituisce un elenco vuoto. Sono accettate lettere e cifre Unicode.
L’estrattore si ferma davanti a spazi, punteggiatura, trattini e altri simboli diversi da lettere, numeri o trattini bassi. Inoltre, non avvia un token subito dopo una lettera, un numero, un trattino basso o un’altra chiocciola: questa regola evita risultati ingannevoli da e-mail e marcatori doppi. Usi l’array per instradamento, moderazione, notifiche, analisi o indicizzazione, ma verifichi separatamente i nomi sulla piattaforma se l’esistenza è importante.
La logica pura restituisce sempre lo stesso risultato per lo stesso input.
Casi d'uso
Instradare i messaggi della comunità
Estragga i nomi unici menzionati prima di assegnare un post alle persone o ai team responsabili della risposta.
Ripulire conversazioni esportate
Crei un elenco in ordine di prima comparsa dai registri delle chat senza acquisire i domini degli indirizzi e-mail.
Indicizzare le menzioni per l’analisi
Converta commenti liberi in array stabili da contare, filtrare o collegare ai dati di una piattaforma.
Domande frequenti
Quali caratteri può contenere una menzione?
Dopo @ può contenere lettere e numeri Unicode, oltre ai trattini bassi. Gli altri caratteri concludono il token.
Come vengono gestite le menzioni duplicate?
Sono confrontate senza distinguere maiuscole e minuscole. Vengono conservati la prima grafia e l’ordine di comparsa.
Vengono estratte parti degli indirizzi e-mail?
No. Una menzione non può iniziare subito dopo una lettera, un numero, un trattino basso o un’altra chiocciola.
Che cosa accade se non ci sono menzioni?
La capacità termina correttamente e restituisce un elenco di menzioni vuoto.
Viene verificata l’esistenza del nome utente?
No. Vengono estratti solo token con la forma di una menzione, senza contattare social network o directory di account.
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/extract-mentions \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Thanks @Ada and @Linus for reviewing this with @ADA."}'const res = await fetch("https://api.kit.forhosting.com/text/extract-mentions", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Thanks @Ada and @Linus for reviewing this with @ADA."
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/extract-mentions",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Thanks @Ada and @Linus for reviewing this with @ADA."
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/extract-mentions", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Thanks @Ada and @Linus for reviewing this with @ADA."}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Thanks @Ada and @Linus for reviewing this with @ADA."}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/extract-mentions", 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": "Thanks @Ada and @Linus for reviewing this with @ADA."
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.extract_mentions",
"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.
Limiti
max_text_chars | 100000 |
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
Comprenda la deduplicazione indipendente dalle maiuscole
Il confronto considera l’intero token, compresa la chiocciola iniziale, mentre trattini bassi e numeri restano parti significative. @sam, @sam_2 e @sam2 sono quindi tre menzioni diverse.
Applichi regole chiare nelle automazioni
Un campo assente, un valore non stringa o un testo troppo lungo genera un errore invalid_input, permettendo al flusso di distinguere una richiesta errata da un contenuto privo di menzioni. L’esecuzione tramite API costa $0.002.