Текст

Sort & Dedupe Lines

Сортування рядків тексту за алфавітом, видалення дублікатів, порожніх рядків і зайвих пробілів.

Інструмент упорядковує список рядків за алфавітом, прибирає дублікати й порожні рядки — типове очищення списку, яке вручну робити довго й легко помилитися.

Як користуватися

Типові сценарії

Що варто памʼятати

Звичайне алфавітне сортування ставить "file10" перед "file2", бо порівнює рядки посимвольно, — для очікуваного порядку з числами потрібне природне сортування (natural sort).

Видалення дублікатів чутливе до регістру за замовчуванням: "Текст" і "текст" вважаються різними рядками, якщо текст не приведений до одного регістру заздалегідь.

Стаття про цей інструмент: Сортування та видалення дублікатів рядків: навіщо це потрібно

Часті запитання

Чим відрізняється сортування з урахуванням регістру від сортування без урахування регістру?

З вимкненим "Без урахування регістру" великі й малі літери сортуються окремо за кодом символу; увімкнене — порівнює рядки незалежно від регістру, зближуючи "Apple" і "apple".

Як обробляються дублікати, порожні рядки та пробіли?

Два ідентичні рядки (згідно з обраною опцією регістру) вважаються дублікатами, і зберігається лише перший; "Обрізати пробіли" прибирає пробіли на початку й в кінці перед сортуванням, а "Видалити порожні рядки" усуває рядки без видимого символу.

Чи надсилаються мої рядки тексту на сервер?

Ні, сортування й дедуплікація повністю відбуваються у вашому браузері на JavaScript — жодні дані нікуди не передаються.

Чому "10" опиняється перед "9" при алфавітному сортуванні?

Алфавітне (лексикографічне) сортування порівнює рядки символ за символом як текст, а не як числа: "1" лексикографічно менший за "9", тому "10" стає перед "9". Для числового порядку рядки потрібно спершу парсити як числа.

Чи можна сортувати за природним порядком (natural sort)?

Природне сортування розпізнає послідовності цифр усередині рядка як числа, а решту порівнює як текст — завдяки цьому "file2.txt" опиняється перед "file10.txt", що зручно для назв файлів чи версій із текстовим префіксом.

Статті: Текст

Case Converter: навіщо потрібні різні стилі написання

Чому в одному проєкті змінні пишуть camelCase, а файли — kebab-case, і звідки взялись ці правила.

Text Diff: як алгоритми знаходять різницю між текстами

Як diff-алгоритм знаходить мінімальний набір змін між двома версіями тексту.

Регулярні вирази: основний синтаксис і типові патерни

Як читати регулярний вираз і чим жадібний пошук відрізняється від лінивого.

String Escape: чому той самий текст треба екранувати по-різному

Чому той самий символ лапок екранується по-різному в JS-рядку, JSON і shell-команді.

CRLF проти LF: чому символи кінця рядка досі мають значення

Чому файл, написаний у Windows, може показувати «змінений увесь файл» у git на Linux.

Підрахунок символів і слів: чому це не завжди тривіально

Чому емодзі чи символи з діакритикою можуть рахуватись як кілька символів одразу.

Lorem Ipsum: звідки взявся текст-заповнювач і навіщо він потрібен

Чому дизайнери навмисно використовують «безглуздий» текст замість реального контенту в макетах.

Slugify: як перетворити довільний текст на URL-адресу

Як заголовок «Привіт, Світ!» перетворюється на URL-сумісний рядок вигляду pryvit-svit.

Markdown: чому простий текстовий синтаксис переміг складні редактори

Чому розробники обирають писати документацію в Markdown, а не в форматованому текстовому редакторі.

Пробіли та невидимі символи: прихована причина дивних багів

Чому два на вигляд однакові рядки можуть не збігатися при порівнянні через невидимий символ.

Text Reverse: чому «перевернути текст» складніше, ніж здається

Чому наївний реверс рядка може перетворити емодзі на непридатні для показу байти.

Частотний аналіз тексту: навіщо рахувати повторення слів

Як частота літер у зашифрованому тексті допомагає зламати найпростіші шифри підстановки.