Estatísticas de comprimento de linha: mínimo, máximo, média e mediana
Receba os quatro números que descrevem a largura das suas linhas: numa amostra de três linhas, a mais curta tem 5 caracteres, a mais longa 22 e a mediana 10. Ache a linha que vai quebrar o layout sem conferir o arquivo a olho. 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
- short a somewhat longer line mid length
- Linhas
- 3
- Min
- 5
- Max
- 22
- Média
- 12,333333
É a maneira mais rápida de responder a perguntas como qual é a largura real de um arquivo de log, se um poema mantém um ritmo constante ou se um documento quebrado respeita a largura de coluna pretendida, sem carregar o texto em um editor para inspecioná-lo a olho.
O que os quatro números revelam
Cada estatística responde a uma pergunta diferente sobre o seu texto. O comprimento mínimo de linha flagra o lado curto: separadores em branco, linhas de uma palavra ou um fragmento solto que sobrou de uma edição. O comprimento máximo de linha flagra o lado longo, que é o que quebra layouts, painéis de terminal, clientes de e-mail e ferramentas de revisão de código que pressupõem um orçamento de colunas.
A média dá o tamanho típico, útil quando você compara duas versões do mesmo documento ou verifica se uma reescrita realmente enxugou a prosa. E a mediana mostra onde está a linha do meio, mais robusta que a média quando poucas linhas extremas arrastariam a média. Lidos juntos, mínimo e máximo dão a dispersão, enquanto média e mediana juntas revelam a distorção: se a média está bem acima da mediana, um punhado de linhas muito longas está puxando o texto para cima, e você provavelmente vai querer encontrá-las.
Como as linhas e os comprimentos são contados
O texto é dividido em linhas em qualquer uma das quebras de linha habituais — LF, CR ou CRLF —, de modo que arquivos de sistemas Unix, Mac clássico e Windows são medidos da mesma forma. O comprimento é contado em caracteres, exatamente como a string os contém: sem aparar, sem colapsar espaços em branco, sem exclusões.
Uma linha vazia entre dois parágrafos conta como uma linha de comprimento zero, e uma linha de espaços finais conta cada um desses espaços, porque essa é a largura honesta do que você enviou. A média e a mediana são arredondadas para seis casas decimais, para que o resultado seja idêntico em qualquer máquina, o que importa quando você compara saídas entre execuções ou as guarda em uma trilha de auditoria.
Onde isso se encaixa em fluxos de trabalho reais
As equipes incorporam as estatísticas de comprimento de linha em verificações que de outro modo seriam inspeções manuais. Um pipeline de documentação confere se os exemplos de código permanecem dentro de um orçamento de 80 colunas antes da publicação; um pipeline de dados perfila arquivos de largura fixa recebidos e rejeita um feed cujo comprimento de registro muda de repente; um fluxo editorial confirma que uma newsletter em texto puro quebra como o modelo espera.
Nada do que você envia é guardado: o texto é medido e descartado, e apenas os quatro números retornam. Para contar linhas em vez de medi-las, combine com um contador de linhas; para impor uma largura, com um quebrador de texto que redimensiona as linhas para a coluna que você escolher.
Casos de uso
Audite um log ou feed de dados
Perfile um arquivo de largura fixa ou estilo CSV recebido e alerte quando o comprimento máximo de linha se desviar do tamanho de registro que o analisador espera.
Imponha um orçamento de colunas
Verifique se exemplos de código, READMEs ou e-mails em texto puro permanecem dentro de um limite de 80 colunas antes de serem publicados ou enviados.
Compare rascunhos de um documento
Acompanhe a média e a mediana do comprimento de linha entre revisões para ver se uma edição realmente enxugou o texto ou apenas moveu palavras de lugar.
Perguntas frequentes
Quanto custa?
Também é grátis executar no seu navegador nesta página.
O que conta exatamente como uma linha?
O texto é dividido nas quebras de linha LF, CR ou CRLF. Cada segmento conta, inclusive linhas vazias, que medem comprimento zero.
Os espaços em branco são aparados antes da medição?
Não. Os comprimentos são contados em caracteres exatamente como enviados, então os espaços iniciais e finais entram no comprimento de cada linha.
Como a média e a mediana são arredondadas?
Ambas são arredondadas para seis casas decimais, para que os resultados sejam estáveis e idênticos byte a byte entre máquinas e execuções.
O meu texto fica armazenado?
Não. Ele é medido e descartado; apenas as quatro estatísticas são devolvidas.
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/text/line-length-stats \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"short\na somewhat longer line\nmid length"}'const res = await fetch("https://api.kit.forhosting.com/text/line-length-stats", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "short\na somewhat longer line\nmid length"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/line-length-stats",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "short\na somewhat longer line\nmid length"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/line-length-stats", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"short\\na somewhat longer line\\nmid length"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"short\na somewhat longer line\nmid length"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/line-length-stats", 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": "short\na somewhat longer line\nmid length"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.line_length_stats",
"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_mb | 5 |
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
A API de estatísticas de comprimento de linha lê um texto de várias linhas e devolve, em uma única chamada, os quatro números que descrevem o tamanho das suas linhas: a linha mais curta, a mais longa, o comprimento médio e a mediana, tudo contado em caracteres. Cole o texto e você obtém o perfil; automatize e o mesmo código roda na borda por US$ 0,002 por requisição.
Como as linhas e os comprimentos são contados
A única entrada rejeitada é um texto sem nenhuma linha — uma string vazia —, porque não há nada significativo para medir; nesse caso você recebe um erro invalid_input claro e a requisição não é cobrada.
Onde isso se encaixa em fluxos de trabalho reais
Como o mesmo código roda grátis no seu navegador e na API, você pode prototipar a verificação colando uma amostra nesta página e só pagar — US$ 0,002 por requisição — quando automatizar.
Perguntas técnicas
O que acontece se o texto estiver vazio?
Uma string vazia não tem linhas, então a requisição falha com um erro invalid_input e não é cobrada.