oLoveTools
Локальная мастерская списков

Сортировка, дедупликация и смешивание списков

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

Рецепт, который можно переставить и отменить
Настоящая сортировка ICU с натуральным порядком чисел
Операции над множествами со вторым списком
Честные розыгрыши: криптослучайность или зерно
Список A
делить по
Результат
00элементов0.0 msистория: 0 B · 0обновляется…
Продолжайте
Горячие клавиши
Ctrl+Z отменитьCtrl+Shift+Z вернутьCtrl+Enter выполнить отложенный списокAlt добавить обратную операциюправый клик то же самое мышью
Операциидержите Alt = наоборот
Порядок
Очистка
Текст
Фильтр
Смешивание
Готовые рецепты
Ваш рецепт

Пока нет операций

Ваш список нетронут. Выберите операцию выше, и она появится здесь: её можно переставить, настроить или выключить.

Как это работает

1

Принесите список

Вставьте его, перетащите .txt или .csv на страницу либо примите из другого инструмента. Он только загружается — к нему пока ничего не применяется.

2

Складывайте операции

Каждая выбранная операция добавляется в рецепт, а не переписывает результат: её можно переставить, позже изменить настройки или выключить, чтобы увидеть, что она давала.

3

Настройте и измерьте

Каждый шаг показывает, сколько элементов он убрал или переписал, так что «удалить дубликаты» — это проверяемое число, а не догадка.

4

Забирайте результат

Скопируйте, скачайте, оформите как список IN для SQL или массив JSON, либо отправьте прямо в другой инструмент набора.

Рецепт, а не правка без возврата

Результат выводится из вашего списка плюс упорядоченного набора шагов. Ничего не переписывается, поэтому передумать насчёт второго шага стоит одного клика, а не начала с нуля.

Сортировка, уважающая ваш язык

Сравнение идёт через единственный Intl.Collator, созданный для языка страницы, с натуральным порядком чисел и необязательным сведением регистра и диакритики — вместо нового коллатора на каждое сравнение.

Два списка, пять способов их смешать

Оставьте то, что есть в обоих, только то, что в A, то, чего не разделяет ни один, объединение, или чередуйте их элемент за элементом — со сведением регистра и пробелов, когда нужно.

Розыгрыши, которые можно отстоять

Перемешивание и выбор используют криптографический генератор браузера, поэтому розыгрыш непредсказуем. Задайте зерно — и любой, кто его знает, повторит ровно тот же розыгрыш.

Большие списки не тормозят

После двадцати тысяч элементов цепочка уходит в фоновый поток, а после четырёхсот тысяч символов ждёт вашего нажатия «Выполнить», а не гадает.

Уходит в нужной форме

Один клик превращает результат в CSV в кавычках, массив JSON, конструкцию IN для SQL, массив JavaScript, список Markdown или элементы списка HTML — либо задайте обрамление сами.

сортировка списка

Быстро из-за устройства, а не из-за малого размера

Сортировка создаёт один Intl.Collator и переиспользует его на весь проход. Простой сортировке А-Я это даёт немного — браузеры и так кешируют коллатор по умолчанию, — но именно это делает доступными полезные настройки: на 60 000 строк натуральный числовой порядок со сведением диакритики занимает около 0,7 с через переиспользуемый коллатор и порядка 9 с, если эти настройки передавать в localeCompare при каждом сравнении, то есть примерно в четырнадцать раз медленнее. Кроме того, всё, что больше двадцати тысяч элементов, уходит в Web Worker, поэтому страница продолжает прокручиваться во время работы, а история отмены хранит ваши шаги, а не копии текста.

Девятнадцать операций, складываемых свободно
История отмены измеряется килобайтами
Разбор входа по CSV, табуляции или regex
Ничего не отправляется и не хранится

Приватно, потому что отправлять некуда

Нет сервера, нет загрузки, нет аналитики по вашему содержимому и ни одного стороннего скрипта в обработке. Ваш список живёт в памяти вкладки и больше нигде; закрыть вкладку — это и есть кнопка удаления.

Сделано под списки, которые у людей есть на самом деле

Неразрушающая по устройству

Результат выводится из вашего списка плюс рецепта, поэтому ничто из сделанного не является дверью в одну сторону. Выключите шаг, чтобы точно увидеть его вклад, перетащите его выше, поменяйте разделитель нумерации, добавленной десять операций назад, или отмените последние тридцать правок. Набор текста в поле ввода больше не выбрасывает вашу работу.

Сортировка, дедупликация и смешивание списков

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

Частые вопросы

QМожно ли складывать несколько операций?+

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

QПравка ввода уничтожает мои операции?+

Нет. Список и рецепт разделены: измените список, и тот же рецепт снова отработает по новому тексту. Это была единственная настоящая ловушка предыдущей версии инструмента, где ввод одного символа сбрасывал результат.

QПочему сортировка ставит item10 перед item2?+

Потому что простой алфавитный порядок сравнивает «1» и «2» посимвольно. Переключите карточку сортировки на 1-9, и она возьмёт натуральный порядок чисел: item2 окажется перед item10. Вариант «длина» сортирует по длине элемента, а Аа сводит регистр и диакритику.

QКак сравнить два списка?+

Добавьте операцию «Смешать со списком B», и появится второе поле. Она может оставить только элементы, встречающиеся в обоих списках, только те, что в A, только те, которых не разделяет ни один, объединение обоих, или чередовать их. Сведение регистра и пробелов — это переключатели, так что «Аня » и «аня» могут считаться одной записью.

QДостаточно ли честно перемешивание для розыгрыша?+

Да. Это перемешивание Фишера–Йетса поверх криптографического источника случайности браузера с выборкой с отклонением, поэтому все порядки равновероятны — в отличие от привычного Math.random. Если вы хотите иметь возможность доказать розыгрыш, введите зерно: объявите его заранее, и любой сможет повторить ровно тот же результат.

QНасколько большой список он выдержит?+

Файлы до 8 МБ, это примерно полмиллиона обычных строк. После двадцати тысяч элементов работа уходит в фоновый поток, а после четырёхсот тысяч символов инструмент перестаёт выполняться сам и ждёт нажатия «Выполнить», так что вставка чего-то огромного никогда не подвешивает вкладку.

QМожно ли поправить что-то вручную?+

Нажмите «Править вручную», и поле результата станет редактируемым, а рецепт встанет на паузу. У ручных правок свои уровни отмены, а «Вернуться к рецепту» возвращает к выводимому результату. Можно работать так с самого начала и вообще не добавлять ни одной операции.

QМой список куда-нибудь отправляется?+

Нет. Каждая операция — это обычный JavaScript в вашей вкладке: сервер не участвует, и ни один запрос не уносит ваше содержимое. После загрузки страницы инструмент работает и без сети.

Ключевые слова

сортировка спискаудалить дубликаты из спискаперемешать списоксортировать строки по алфавитунатуральная сортировкаслучайный порядок спискасравнить два спискасписок в значения через запятуюсписок в конструкцию IN для SQLпронумеровать списокдедупликация
Часть набора инструментов oLoveTools
oLoveTools

Сортируйте, дедуплицируйте, фильтруйте и смешивайте списки рецептом, который можно отменить, целиком внутри браузера.

© 2026 oLoveToolsО нас

List Mixer | Сортировка списков, удаление дубликатов и перемешивание онлайн

Сортируйте, дедуплицируйте, перемешивайте, фильтруйте и переформатируйте списки в браузере. Девятнадцать складываемых операций, операции над множествами двух списков, вывод в CSV/JSON/SQL. Бесплатно, без загрузки на сервер.

Мастерская списков вместо десяти одноразовых страниц

Большинство утилит для списков делают по одному делу на страницу: одна сортирует, другая убирает дубликаты, третья перемешивает. Связать три из них — значит копировать результат туда-сюда и потерять его при первой же опечатке. List Mixer держит всю последовательность в одном месте в виде редактируемого рецепта: «обрезать, убрать пустые, удалить дубликаты, отсортировать натурально, пронумеровать с 001» — это пять кликов, которые можно переставить, перенастроить и отменить по одному.

Всё выполняется прямо на странице: сортировка идёт через собственный коллатор ICU браузера, перемешивание — через его криптографический источник случайности, а большие списки уходят в Web Worker, чтобы вкладка оставалась отзывчивой. Ничего не отправляется, ничего не хранится, и закрыть вкладку достаточно, чтобы удалить ваши данные. Результат может выйти простыми строками, значениями через запятую, массивом JSON, конструкцией IN для SQL, массивом JavaScript, маркерами Markdown или элементами списка HTML — либо отправиться прямо в другой инструмент oLoveTools без скачивания.

Частые вопросы

Можно ли складывать несколько операций?

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

Правка ввода уничтожает мои операции?

Нет. Список и рецепт разделены: измените список, и тот же рецепт снова отработает по новому тексту. Это была единственная настоящая ловушка предыдущей версии инструмента, где ввод одного символа сбрасывал результат.

Почему сортировка ставит item10 перед item2?

Потому что простой алфавитный порядок сравнивает «1» и «2» посимвольно. Переключите карточку сортировки на 1-9, и она возьмёт натуральный порядок чисел: item2 окажется перед item10. Вариант «длина» сортирует по длине элемента, а Аа сводит регистр и диакритику.

Как сравнить два списка?

Добавьте операцию «Смешать со списком B», и появится второе поле. Она может оставить только элементы, встречающиеся в обоих списках, только те, что в A, только те, которых не разделяет ни один, объединение обоих, или чередовать их. Сведение регистра и пробелов — это переключатели, так что «Аня » и «аня» могут считаться одной записью.

Достаточно ли честно перемешивание для розыгрыша?

Да. Это перемешивание Фишера–Йетса поверх криптографического источника случайности браузера с выборкой с отклонением, поэтому все порядки равновероятны — в отличие от привычного Math.random. Если вы хотите иметь возможность доказать розыгрыш, введите зерно: объявите его заранее, и любой сможет повторить ровно тот же результат.

Насколько большой список он выдержит?

Файлы до 8 МБ, это примерно полмиллиона обычных строк. После двадцати тысяч элементов работа уходит в фоновый поток, а после четырёхсот тысяч символов инструмент перестаёт выполняться сам и ждёт нажатия «Выполнить», так что вставка чего-то огромного никогда не подвешивает вкладку.

Можно ли поправить что-то вручную?

Нажмите «Править вручную», и поле результата станет редактируемым, а рецепт встанет на паузу. У ручных правок свои уровни отмены, а «Вернуться к рецепту» возвращает к выводимому результату. Можно работать так с самого начала и вообще не добавлять ни одной операции.

Мой список куда-нибудь отправляется?

Нет. Каждая операция — это обычный JavaScript в вашей вкладке: сервер не участвует, и ни один запрос не уносит ваше содержимое. После загрузки страницы инструмент работает и без сети.

Ключевые слова

сортировка списка, удалить дубликаты из списка, перемешать список, сортировать строки по алфавиту, натуральная сортировка, случайный порядок списка, сравнить два списка, список в значения через запятую, список в конструкцию IN для SQL, пронумеровать список, дедупликация