Online String & Text Tools
The everyday chores of tidying up text: change case, switch naming style, sort lines, remove duplicates, add prefixes in bulk, count characters. Type on the left, choose an operation on the right, and the result appears immediately.
Processing happens locally in the browser and your text is never uploaded.
Features
- Case & Naming — UPPER, lower and Title Case, plus conversion between camelCase, snake_case and other naming styles.
- Sorting — Sort lines alphabetically, by length, or shuffle them randomly.
- Deduplication — Remove duplicate lines, with options to keep or drop blank and whitespace-only lines.
- Find & Replace — Plain text or regular expression replacement with a preview of what matched.
- Split & Join — Split text by a delimiter or a fixed length, or join multiple lines into one.
- Line Operations — Add a prefix, suffix or line number to every line, with a custom start value and format.
- Live Statistics — Character, word, line and UTF-8 byte counts update as you type.
How to use
- Paste or type the text you want to work on the left.
- Pick an operation category on the right — case, sorting, dedupe, replace, split/join or line operations.
- Fill in any parameters the operation needs, such as a delimiter or prefix.
- Review the output in the result panel and copy it.
FAQ
How is the byte count calculated?
As UTF-8. An ASCII character takes 1 byte, a common Chinese character takes 3, and emoji or other supplementary-plane characters usually take 4. That is why the byte count of non-Latin text is noticeably larger than its character count.
Can I use regular expressions for find and replace?
Yes. Choose the replace operation and use a regular expression, referencing capture groups as $1, $2 and so on.
When deduplicating, is the first or the last occurrence kept?
The first occurrence is kept by default and later duplicates are removed, so the relative order of the remaining lines is preserved.
Does it slow down with very long text?
Routine processing of up to tens of thousands of lines is instant. For much larger inputs it is better to work in chunks, so the browser does not have to build one enormous string.