Criar uma tabela HTML com texto delimitado

Cole linhas CSV, TSV ou outro texto delimitado e copie a marcação <table> gerada. Campos entre aspas, aspas escapadas ("") e quebras de linha dentro de aspas são lidos como uma única célula, e o texto das células é escapado para HTML.

Funciona localmente no seu navegador

Como converter linhas delimitadas em uma tabela HTML

Cole linhas CSV, TSV ou de outro tipo delimitado, escolha o caractere que separa as colunas e a página devolve a marcação da tabela: um <tr> por linha e um <td> por campo, pronta para colar em uma página, um modelo de e-mail ou um README.

As linhas são lidas no navegador por um analisador que entende aspas: um campo entre aspas duplas pode conter o separador, "" equivale a uma aspa literal e uma quebra de linha dentro de um campo entre aspas permanece nessa célula. Nada é enviado e a página continua funcionando offline depois de carregada.

  1. Cole as linhas na caixa de texto, cujo marcador de posição diz “Cole texto CSV ou delimitado”. Textos separados por vírgula, tabulação, barra vertical ou espaço são aceitos, com ou sem campos entre aspas.
  2. Escolha o separador: vírgula, TAB, barra vertical ou espaço simples, ou digite o seu no campo Personalizado. O que você digitar ali anula as opções marcadas.
  3. Pressione Converter. A caixa de resultado é preenchida com a marcação <table> e uma linha abaixo dos botões informa quantas linhas e colunas foram lidas.
  4. Pressione Copiar para levar a marcação, ou Limpar para esvaziar a caixa antes da próxima colagem.

Como as linhas são lidas

Campos entre aspas e quebras de linha

Um campo entre aspas duplas pode conter o próprio separador: em "ac, abs, moon" a vírgula faz parte do texto, então a linha mantém quatro campos em vez de dividir o valor entre aspas em três. Dentro de um campo entre aspas, "" representa uma aspa dupla literal; é assim que um valor como "Venture ""Extended Edition""" chega intacto.

Uma quebra de linha dentro de um campo entre aspas fica dentro dessa célula, e uma quebra no fim do texto colado não acrescenta uma linha vazia. Se a caixa estiver vazia, a página avisa em vez de devolver uma tabela vazia.

O que a marcação gerada contém

A saída é um fragmento <table> puro: um <tr> por linha, um <td> por campo, sem atributos, sem CSS, sem <thead> e sem linha de cabeçalho; a primeira linha é uma linha de <td> como qualquer outra.

O texto das células é escapado para HTML: & vira &amp;, < vira &lt; e > vira &gt;. Uma célula que contenha marcação ou uma tag script continua sendo texto visível na tabela gerada, em vez de virar parte da página que a incorpora.

Separadores, limites e colagens grandes

O separador é comparado como texto literal, não como expressão regular, então um separador próprio como . * ( ou :: é tratado como texto comum. A página não adivinha o separador: se a contagem de colunas na linha de status não bater, a escolha do delimitador é o primeiro item a revisar.

A entrada é apenas texto colado: não há seletor de arquivos .csv ou .xlsx, então uma planilha precisa ser exportada ou copiada do próprio aplicativo. A conversão roda no navegador e alguns milhares de linhas são instantâneos; resultados com mais de 100.000 caracteres aparecem sem coloração para não travar a aba.

Ferramentas recentes: