Перейти к содержанию

Валидатор столбцов CSV

Убедитесь, что каждая строка файла CSV или TSV имеет такое же количество столбцов, что и заголовок.

Входные данные
Выходные данные

Валидатор столбцов CSV

Вставьте текст с разделителями, и этот инструмент проверит, что каждая строка имеет такое же количество полей, что и строка заголовка. Это проверка, которую необходимо выполнить перед импортом экспорта CSV в базу данных или конвейер, который предполагает фиксированное количество столбцов — случайная запятая или отсутствующее поле могут незаметно сдвинуть каждый столбец после нее, и эту ошибку трудно отследить, когда она находится в нисходящем направлении.

Инструмент подсчитывает поля в первой строке и считает это значение правильным. Каждая следующая строка сравнивается с ней; несовпадающая строка получает строку комментария, вставленную непосредственно над ней в выводе, читая что-то вроде «# Строка 3: ожидалось 3 столбца, получено 2». Ни одна строка не удаляется и не переупорядочивается — данные остаются нетронутыми, аннотируются, а не фильтруются, поэтому вы можете точно увидеть, где экспорт пошёл не так.

Выберите разделитель, соответствующий вашему файлу: запятая для стандартного CSV, точка с запятой для европейского варианта, который некоторые инструменты для работы с электронными таблицами используют по умолчанию, или табуляция для TSV. Обрезка пробелов в полях включена по умолчанию, поэтому «Берлин» и «Берлин» считаются одним и тем же полем, а не спотыкаются о случайное пространство при копировании таблицы. Отключите его, чтобы видеть поля в том виде, в каком они выглядят, включая пробелы.

Одно честное ограничение: это простая проверка на основе разделения, а не полный синтаксический анализатор CSV, поэтому он не обрабатывает разделители внутри полей в кавычках — «Смит, Джон» со встроенной запятой считается за два поля. Относитесь к помеченной строке из файла с полями в кавычках как к чему-то, что нужно просмотреть на глаз, а не как к окончательному вердикту. Пустые строки пропускаются, а строки нумеруются от 1 среди остальных. Все работает локально в вашем браузере — файл никогда не покидает ваше устройство, что важно для экспорта клиента или чего-то, что вам не следует загружать в случайный веб-сервис.

FAQ

Обрабатывает ли это поля в кавычках с запятыми внутри них?
Нет — это простое разделение разделителей, а не полный синтаксический анализатор CSV, поэтому разделитель внутри поля в кавычках (например, «Смит, Джон») считается настоящим разделителем полей. Относитесь к помеченным строкам из файлов с полями в кавычках как к чему-то, что нужно просмотреть на глаз.
Что происходит с пустыми строками в моем вводе?
Полностью пустые строки перед подсчетом пропускаются. Остальные строки нумеруются по порядку, начиная с 1, поэтому номера строк в флагах относятся к строкам ваших данных, а не к исходным номерам строк.
Можно ли сообщить о несоответствии в самой строке заголовка?
Число полей строки заголовка становится ожидаемым значением, поэтому оно никогда не помечается как противоположное самому себе. Каждая строка после нее, включая заголовок, повторяющийся далее в файле, проверяется по этому счетчику.
Удаляет ли инструмент или меняет порядок строк?
Нет. Каждая строка из вашего ввода появляется в выводе в исходном порядке — над несовпадающими строками вставляется строка комментария, но ничего не удаляется и не перемещается.
Мой текст где-нибудь загружен?
Нет — он никогда не покидает ваш браузер; все работает локально на вашем устройстве.