ForHosting KIT · Texto e IA

Encontrar linhas comuns em dois textos

Compare apple, banana, cherry, banana, pear com pear, banana, orange, banana e receba banana e pear: cada linha em comum uma só vez, na ordem da primeira lista. A comparação é exata por padrão, com opção de ignorar maiúsculas. Grátis no seu navegador.

  • Grátis
  • Funciona no seu navegador
  • Sem cadastro
  • Seus dados não saem do seu aparelho
Use pelo WebAPIE-mailTelegramApp em breve
Se você digitar
Texto a
apple banana cherry banana pear
Texto b
pear banana orange banana
Você obtém
Texto
banana pear
Linhas comuns
banana, pear
Quantidade em comum
2
Linhas do texto A
5

Encontrar a sobreposição entre duas listas coladas não deveria exigir uma fórmula de planilha, um pipeline de shell ou uma inspeção manual cuidadosa. Esta ferramenta compara dois textos com várias linhas e retorna as linhas únicas que aparecem em ambos. O resultado segue a ordem do primeiro texto, portanto é previsível e fácil de colar em outro fluxo. A comparação é exata por padrão, então espaços, pontuação e maiúsculas continuam relevantes. Um modo opcional sem distinção entre maiúsculas e minúsculas pode combinar Apple com apple, preservando a grafia original do primeiro texto.

Como funciona a comparação de linhas comuns

A capacidade trata cada entrada como uma sequência de linhas e calcula a interseção de conjuntos entre elas. Primeiro, converte terminações com retorno de carro em quebras de linha comuns. Assim, uma lista do Windows e outra do Unix podem ser comparadas sem diferenças falsas causadas apenas pelo formato do arquivo.

Cada linha do segundo texto se torna uma chave de consulta. Em seguida, o primeiro texto é percorrido de cima para baixo, e uma linha é emitida quando sua chave existe no segundo conjunto e ainda não foi emitida. Isso produz cada linha compartilhada uma vez, na ordem de sua primeira ocorrência no primeiro texto.

Por padrão, a comparação é exata: espaços iniciais e finais, pontuação, acentos e maiúsculas influenciam a igualdade. Linhas em branco são valores legítimos e aparecem uma vez quando existem nas duas entradas.

Fluxos práticos de interseção de listas

A correspondência de linhas comuns é útil sempre que dois sistemas exportam um valor por linha e você precisa saber a sobreposição. Uma pessoa responsável por releases pode comparar nomes de pacotes de duas implantações para descobrir dependências compartilhadas. Uma análise pode reunir segmentos de clientes de relatórios separados e obter os identificadores presentes em ambos sem enviar uma planilha ou escrever uma junção.

Equipes de conteúdo podem comparar palavras-chave, etiquetas ou URL preservando a prioridade da primeira fonte. Também é possível cruzar vocabulários, listas de presença ou códigos de estoque de dois instantâneos. Para material sensível, lembre-se de que a comparação é literal, não semântica: ela não decide se domínios, nomes ou caminhos parecidos representam a mesma coisa.

Também não remove espaços, normaliza Unicode, ordena resultados, conta ocorrências duplicadas nem calcula linhas exclusivas de um lado. Essas escolhas são intencionais, pois uma limpeza silenciosa pode unir valores que devem continuar distintos. Prepare ou normalize suas listas primeiro quando o fluxo exigir e use esta capacidade para a etapa transparente de interseção.

O array funciona bem em aplicativos, enquanto o texto unido facilita copiar e colar imediatamente.

Comparar listas de identificadores

Encontre contas, produtos ou chaves presentes em exportações de dois sistemas, preservando a ordem da primeira.

Cruzar etiquetas e palavras-chave

Identifique etiquetas, termos ou categorias compartilhadas, com comparação opcional sem diferenciar maiúsculas.

Verificar inventários de implantação

Compare inventários de pacotes ou serviços, um por linha, e retorne as entradas únicas presentes nos dois ambientes.

Linhas comuns repetidas são retornadas mais de uma vez?

Não. Cada linha correspondente é retornada uma vez, mesmo que apareça várias vezes em qualquer entrada.

A ferramenta ignora espaços ao redor de uma linha?

Não. Os espaços são significativos; uma linha com espaços finais difere da mesma aparência sem eles.

Em que ordem as linhas em comum aparecem?

Na ordem em que surgem pela primeira vez no primeiro texto, nunca em ordem alfabética nem na ordem da segunda lista. Por isso o exemplo dá banana antes de pear, embora pear venha primeiro na segunda lista.

Linhas que só mudam nas maiúsculas podem coincidir?

Sim, ative a opção de ignorar maiúsculas e Apple vai coincidir com apple. O resultado mantém a grafia do primeiro texto, então você não perde as maiúsculas originais.

A ferramenta mostra também as linhas que estão em uma só lista?

Não. Ela devolve só a interseção, as linhas presentes nos dois textos. Não aponta o que falta em cada lado, não ordena o resultado nem conta quantas vezes uma linha se repete.

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.

POSThttps://api.kit.forhosting.com/str/common-lines

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/str/common-lines \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text_a":"apple\nbanana\ncherry\npear","text_b":"banana\npear\norange"}'
{
  "text_a": "apple\nbanana\ncherry\npear",
  "text_b": "banana\npear\norange"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "str.common_lines",
  "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.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

max_chars_per_text65536
HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

As terminações de linha do Windows, Unix e Mac antigo são normalizadas antes da comparação, e a mesma função determinística executa no navegador e na API.

Como funciona a comparação de linhas comuns

Quando ignore_case está ativo, somente as chaves de comparação ficam em minúsculas; o valor retornado preserva a grafia original do primeiro texto. O algoritmo realiza varreduras lineares limitadas e não usa rede, modelo, aleatoriedade ou relógio, portanto solicitações repetidas com entradas idênticas retornam o mesmo JSON.

Como escolher as entradas e interpretar o resultado

Cada campo aceita até 65,536 caracteres. O modo exato é adequado para nomes de usuário sensíveis a maiúsculas, chaves de configuração, hashes, caminhos e códigos nos quais qualquer caractere importa. Duplicatas em qualquer origem nunca duplicam a saída, pois esta é uma interseção de conjuntos, não um pareamento de ocorrências. Envie text_a e text_b como strings não vazias com as listas ou blocos de texto que você deseja comparar. Use quebras de linha entre os itens e omita ignore_case, ou mantenha false, quando os identificadores precisarem corresponder exatamente. Ative ignore_case para categorias, produtos, etiquetas ou listas de domínios em que a capitalização não seja relevante. A resposta inclui text, uma versão unida por quebras de linha pronta para copiar; common_lines, os mesmos valores em um array JSON; e common_count, a quantidade de linhas compartilhadas únicas. Ela também informa a contagem de linhas normalizadas de ambas as entradas e a opção ignore_case resolvida. A ordem vem de text_a, não de text_b nem de uma classificação alfabética. Uma entrada ausente, vazia, não textual ou acima do limite retorna invalid_input. O processamento bem-sucedido pela API custa US$ 0,002 por item, enquanto o navegador executa localmente a mesma lógica pura.

Qual entrada determina a ordem do resultado?

O primeiro texto determina a ordem. As linhas compartilhadas seguem sua primeira ocorrência em text_a.

O que ignore_case altera?

Ele compara chaves em minúsculas, mas mantém no resultado a grafia original de text_a.

Quanto custa uma solicitação de API?

Uma solicitação de API bem-sucedida custa US$ 0,002 por item. A versão web executa localmente a mesma lógica determinística.

Ver a documentação completa do KIT →