List and Line Tools

Text as rows. When each line is an item — names, URLs, SKUs, log entries — the useful operations are on the lines rather than the words: sort them, deduplicate them, number them, wrap each one in the same prefix and suffix, pull out the addresses, or pick one at random. Every tool here does one of those.

Every Lists & Lines tool

Ordering and cleaning

The list sorter orders lines alphabetically, numerically or by length, ascending or descending, with options for case sensitivity and natural sort so "item2" comes before "item10". Remove duplicates keeps the first occurrence of each line, optionally ignoring case and surrounding whitespace, and reports how many were removed. Line numbering adds a counter with your choice of separator and padding, and can strip numbering off again. Whitespace and blank-line handling are explicit in each tool rather than assumed.

Transforming each line

Prefix and suffix wraps every line in the same text — quotes for a string array, a bullet for Markdown, a URL stem for a list of slugs. List to CSV joins lines with a separator you choose and handles the quoting when an item contains that separator. Regex replace applies a regular expression across the whole text with capture groups available in the replacement, and shows a live preview of the matches before you commit.

Extracting

The email extractor and URL extractor scan any text — a web page's source, a log, a mailbox export — and return every address or link found, deduplicated and one per line. Both validate what they find rather than matching on a loose pattern, so the output is ready to use.

Formatting and choosing

Checklist formatter turns lines into Markdown task items, or the reverse, and can tick or untick the lot. Random picker shuffles a list or draws one or more entries from it, using the browser's cryptographic random source so the draw is fair.

Larger lists

All of these run in your browser, so the practical limit is your device's memory rather than a server cap; tens of thousands of lines are handled without a pause. Nothing you paste is sent anywhere or stored.