Skip to content

Todo para WordPress, el desarrollo web — y mucho más

Una lista de texto a array: PHP, JavaScript, Python, Perl, JSON, SQL

Una lista de texto a array: PHP, JavaScript, Python, Perl, JSON, SQL

Pegue una columna de Excel, el resultado de una consulta SQL o simplemente una lista con un elemento por línea: obtendrá un array listo con el escapado correcto para siete formatos. Todo se calcula en su navegador: la lista no se envía a ninguna parte ni se guarda en ningún sitio.

Arrastre aquí un .txt o un .csv: el archivo se lee localmente. Una columna de Excel o Google Sheets se puede pegar directamente.
Tratamiento de los valores

Sirve también para TypeScript. const en lugar de var: redefinir esa variable pasa a ser un error incluso antes de ejecutar.

Pegue una lista arriba: el array aparecerá aquí.

Los datos no salen de su navegador: el cálculo se realiza localmente, sin enviarlos a ningún servidor.

Qué hace exactamente la herramienta con cada valor

Una línea se convierte en un elemento del array. Si hace falta, la línea puede dividirse además por comas según las reglas de CSV: entonces la coma dentro de comillas sigue formando parte del valor. Después cada valor se escapa, de forma distinta para cada lenguaje: PHP y Perl con comillas simples: se escapan exactamente dos caracteres, la barra invertida y la propia comilla. PHP con comillas dobles: se añade el signo de dólar, si no $HOME en el texto insertaría el valor de una variable. Perl con comillas dobles: se añade además la arroba, porque @list en Perl también se interpola. JavaScript, TypeScript y Python: barra invertida, comilla y caracteres de control como secuencias de escape. JSON: estrictamente según RFC 8259, con los medios del propio lenguaje. SQL: el apóstrofo se duplica, como manda el estándar. CSV: según RFC 4180, solo se entrecomilla el campo que contiene una coma, comillas o un espacio en el borde. Un número sale sin comillas solo cuando sigue siendo el mismo número tras pasar por Number(). La referencia 007, un teléfono que empieza por cero, 1e5, 0x1F y un entero mayor que 2⁵³ no pasan esa comprobación y siguen siendo cadenas.

En qué se diferencia esto de los viejos conversores de listas

El arrayThis clásico comprueba «si esto es un número» con isNaN() y no escapa nada salvo la propia comilla. De ahí cuatro daños silenciosos que solo se ven al ejecutar el código generado: La ruta C:\Users\admin entre comillas dobles da una cadena sin cerrar: allí la barra invertida inicia una secuencia de escape. Una línea vacía pasa isNaN() como número y acaba en el código como una coma desnuda: ["a", , "b"]. La referencia 007 se convierte en número octal en PHP y en error de sintaxis en JavaScript estricto. Una lista copiada desde Windows arrastra tras cada valor un retorno de carro invisible. Aquí los cuatro casos están resueltos, y la salida etiquetada como Perl es Perl de verdad: una lista entre paréntesis, no la construcción array(), que no existe en Perl.

Preguntas frecuentes