Extrair palavras por prefixo
Com o prefixo a, «apple apricot banana avocado berry almond» devolve apple, apricot, avocado e almond: 4 correspondências em 6 palavras, na ordem em que aparecem. Serve para treinar ortografia, montar índices ou juntar códigos com a mesma raiz. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Texto
- apple apricot banana avocado berry almond
- Prefixo
- a
- Palavras
- apple, apricot, avocado, almond
- Quantidade
- 4
- Total de palavras
- 6
Editores, professores, analistas de SEO e desenvolvedores costumam precisar de uma lista curta de todas as palavras que começam com uma letra ou um prefixo de código—não uma tabela de frequências completa nem um despejo de palavras únicas de todo o documento. Esta ferramenta de extração por prefixo aceita texto simples e um prefixo obrigatório, tokeniza sequências Unicode de letras e dígitos (incluindo apóstrofos internos como don't) e devolve cada forma superficial correspondente na ordem de aparição. A correspondência sem distinção de maiúsculas está ativa por padrão, de modo que Apple e apple correspondem ao prefixo a; você também pode exigir maiúsculas estritas quando tags codificadas devam manter a capitalização. A resposta inclui a lista ordenada, o número de correspondências, o total de tokens, o prefixo enviado e uma marca de método para pipelines.
O que significa «palavras que começam com» e como as correspondências são escolhidas
Uma palavra que começa com um prefixo é um token cujos caracteres iniciais igualam esse prefixo sob uma definição clara de limites de palavra e de maiúsculas. Esta capacidade define uma palavra como uma sequência máxima de letras ou dígitos Unicode, opcionalmente unida por um apóstrofo interno, de modo que contrações e nomes como don't ou O'Brien permanecem em um único token. Pontuação, símbolos e espaços em branco apenas separam tokens; nunca aparecem na lista de saída.
Cada ocorrência é mantida na ordem do documento, incluindo duplicatas, para que você veja com que frequência um radical codificado se repete sem uma segunda passagem. Uma resposta de sucesso pode legitimamente conter um array words vazio quando o texto tem tokens mas nenhum compartilha o prefixo—é um resultado de filtro válido, não um erro.
Onde um extrator de palavras por prefixo vale a pena
Professores de idiomas montam listas iniciais de fonética e ortografia: cole um trecho, defina o prefixo th ou un e entregue aos alunos cada palavra correspondente em ordem sem destacar manualmente. Equipes de conteúdo e SEO colhem palavras-chave candidatas ou códigos de produto que compartilham um radical (geo, bio, multi) a partir de textos longos antes de escrever meta tags. Scripts de desenvolvimento e operações extraem SKUs de inventário, nomes de feature flags ou tokens de log que começam com um prefixo de projeto a partir de texto livre misto.
Fluxos de glossário e terminologia isolam termos sob um intervalo de letras ao preparar índices alfabéticos. Mantenha as requisições abaixo do limite de caracteres, fixe o array words ordenado e as contagens em testes automatizados, e você obtém um filtro de prefixo reproduzível para plugins CMS, exercícios LMS, edge workers e scripts de limpeza em lote sem montar uma pilha NLP completa.
Casos de uso
Exercícios de fonética e vocabulário
Cole um trecho de leitura e um prefixo de letra ou grupo para listar cada palavra correspondente na prática de ortografia e fonética em sala.
Coleta de tags e radicais de código
Extraia códigos de produto, hashtags ou nomes de recurso que compartilhem um prefixo de projeto a partir de notas e textos de release mistos.
Preparação de glossários e índices
Filtre textos técnicos longos em busca de termos que comecem com um radical escolhido ao montar glossários alfabéticos ou listas curtas de SEO.
Perguntas frequentes
Como funciona a extração de palavras por prefixo?
Tokeniza o seu texto em palavras Unicode de letras e dígitos (com apóstrofos internos), mantém os tokens que começam com o seu prefixo sob as regras de maiúsculas ativas e os devolve na ordem de aparição com contagens.
As correspondências duplicadas são incluídas?
Sim. Cada ocorrência é listada na ordem do documento para que você veja a repetição. Use uma ferramenta separada de palavras únicas se quiser apenas formas distintas.
E se nenhuma palavra corresponder ao prefixo?
A chamada tem sucesso com um array words vazio e count zero. É um resultado de filtro válido. Erros ficam reservados a campos obrigatórios ausentes ou vazios e a outra entrada inválida.
Maiúsculas fazem diferença ao buscar um prefixo?
Por padrão, não: Apple corresponde ao prefixo a, e PreFix a pre. Ligue a comparação estrita quando etiquetas codificadas precisarem manter as maiúsculas; aí PreFix corresponde só a Pre, não a pre.
Contrações como don't contam como uma palavra só?
Sim. Um apóstrofo dentro da palavra a mantém inteira, então don't e O'Brien contam como uma palavra cada. Pontuação, símbolos e espaços só separam palavras e nunca aparecem na lista.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/str/extract-words-starting \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"apple apricot banana avocado berry almond","prefix":"a"}'const res = await fetch("https://api.kit.forhosting.com/str/extract-words-starting", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "apple apricot banana avocado berry almond",
"prefix": "a"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/extract-words-starting",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "apple apricot banana avocado berry almond",
"prefix": "a"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/extract-words-starting", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"apple apricot banana avocado berry almond","prefix":"a"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"apple apricot banana avocado berry almond","prefix":"a"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/extract-words-starting", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"text": "apple apricot banana avocado berry almond",
"prefix": "a"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.extract_words_starting",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_chars | 100000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Texto vazio ou prefixo vazio falham com invalid_input em vez de inventar correspondências.
O que significa «palavras que começam com» e como as correspondências são escolhidas
A correspondência usa startsWith no estilo JavaScript no token após minúsculas opcionais: quando case_insensitive é true (padrão), tanto o token quanto o prefixo são comparados em minúsculas, de modo que PreFix e prefix correspondem ao prefixo pre. Quando case_insensitive é false, PreFix só corresponde ao prefixo Pre, não a pre. Apenas campos ausentes ou vazios, entrada longa demais e formas booleanas inválidas geram invalid_input. Assim a semântica de filtro permanece honesta em exercícios de vocabulário, coleta de hashtags e varreduras de códigos de inventário em que zero acertos é um resultado normal.
Contrato de entrada, formato da resposta e comportamento de erro
Exemplo: o texto apple apricot banana avocado berry almond com prefixo a produz apple, apricot, avocado e almond—quatro correspondências em seis tokens quando a correspondência ignora maiúsculas. Envie por POST um corpo JSON com dois campos obrigatórios: text, uma string não vazia a analisar (aliases: input, string, value, content e s), e prefix, uma string não vazia com a qual cada correspondência deve começar (aliases: starts_with, start e p). O opcional case_insensitive tem padrão true e também aceita ignore_case, ci ou casefold; valores booleanos, 0/1 e strings true/false comuns são aceitos. Números finitos e bigints para text ou prefix são convertidos em string; objetos, arrays e booleanos soltos são rejeitados. O comprimento é limitado a cem mil caracteres para manter as varreduras no navegador e no Worker controladas. Em caso de sucesso o corpo inclui words (formas superficiais correspondentes ordenadas), count (comprimento de words), total_words (todos os tokens após a tokenização), prefix (eco da string que você enviou), case_insensitive (sinalizador efetivo) e method com valor extract_words_starting para rotular pipelines. Texto ausente, vazio ou só com espaços, prefixo ausente ou vazio, campos longos demais e booleanos malformados falham com invalid_input e não são cobrados. Combine este endpoint com um listador de palavras únicas quando precisar do vocabulário completo sem filtro de prefixo, ou com um localizador da palavra mais comum quando só importar o pico único.
Onde um extrator de palavras por prefixo vale a pena
Como a implementação é parse pura de nível A, cada chamada bem-sucedida custa o preço base publicado US$ 0,002 sem tokens de modelo nem rede de saída, e a validação falha não consome saldo.
Perguntas técnicas
A correspondência diferencia maiúsculas de minúsculas?
Por padrão não: case_insensitive é true, então Apple corresponde ao prefixo a. Defina case_insensitive como false para correspondência estrita por capitalização.
Quanto custa extrair palavras por prefixo?
A ferramenta do navegador é gratuita. Solicitações API usam saldo KIT pré-pago a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.