Clean · sort · count · convert
Clean a list without sending it anywhere.
Paste a messy list. Clean it locally. Copy the result.
Remove duplicates and blank lines, sort or number items, filter rows, and convert lists to delimited text or JSON.
Your text stays in your browser. It is not uploaded.
Start here
Make several changes in one pass
Paste your text, add each change you need, then run them from top to bottom. If you only need one change, choose a focused tool instead.
One change at a time
Choose a focused tool
Each tool opens ready for that task and explains exactly what it will change. Choose the description that matches your list.
Clean
Remove repeated, blank, spaced, or matching rows.
- Remove duplicate linesKeep the first occurrence of each line and remove later matches without reordering the list.
- Remove empty linesDelete unwanted blank rows while preserving the content and spacing of every line that remains.
- Trim linesRemove whitespace from selected edges of each line without altering spaces inside the text.
- Filter lines by textKeep matching lines or remove them using a literal substring comparison, with “error” as the initial search term.
Sort and arrange
Change line order with explicit comparison rules.
- Alphabetize a listSort complete lines with an English alphabetic comparison while leaving the text of every line untouched.
- Natural sort a listArrange labels such as file2 and file10 by treating embedded ASCII digit groups as numbers during comparison.
- Sort numbersOrder valid decimal values numerically while retaining their exact spelling and keeping every invalid line visible.
- Reverse linesMove the last line to the first position and continue in reverse order, without changing characters inside a line.
- Shuffle a listReorder all lines with browser cryptographic random values while preserving the exact multiplicity of every entry.
Add and count
Apply fixed labels or summarize repeated lines.
- Add a prefix or suffixPlace the same literal text before or after each line without interpreting it as markup or code.
- Number linesPrepend a configurable integer sequence to lines, starting with 1 and using “. ” as the default separator.
- Count line frequencyGroup equal whole lines, display the first original representation, and append its count after a tab.
Convert
Move between lines, delimiters, and JSON string arrays.
- Lines to a delimited listJoin complete lines with one chosen delimiter, using a comma followed by a space by default.
- Delimited list to linesSplit text at each literal delimiter and place the resulting values on separate lines.
- Lines to a JSON arrayEncode each parsed line as one JSON string using the platform JSON serializer and correct escaping.
- JSON array to linesParse valid JSON only when its top-level value is an array and every item is a string.
No upload step
How privacy works
The public guide and private workspace use different origins. Browser security prevents the public page—and any public-page advertising—from reading the workspace document.
- Paste your textIt enters the private workspace only.
- Run your changesYour browser processes them in memory.
- Use the resultYou copy or download it yourself.
Text is not placed in a URL, cookie, browser storage, analytics event, or message to this page. Closing, navigating away, or resetting clears the in-memory workspace.