What the extractor looks for
The tool scans your text for two patterns: a run beginning with http:// or https:// and a run beginning with www., in both cases continuing until the next whitespace character. Everything matched is listed one per line in the order it appeared, with an optional deduplication pass that keeps the first occurrence of each distinct string.
That whitespace rule is the important one to understand, because it defines the boundaries of a match. A URL that is broken across two lines will be captured only up to the line break, and anything attached to the URL without a space, including a closing parenthesis, a trailing full stop or a quotation mark, will be captured as part of it.
The practical consequence is worth checking for. Extracting from the sentence See https://example.com/page. for details yields https://example.com/page. with the sentence-ending period attached. Most servers will still resolve it, some will not, and a scripted consumer of the list certainly will not. Scan the output before feeding it anywhere automated.
What it will not find
Bare domains without a scheme or a www prefix are not matched, so example.com in the middle of a sentence is skipped. This is deliberate: a pattern loose enough to catch it also catches file names, version numbers and abbreviations, and the false positive rate rises sharply. If you need those, add the scheme before extracting or accept a manual pass.
Other schemes are also out of scope. mailto:, ftp:, tel:, ws: and custom application schemes such as slack:// are not recognised. Nor are protocol-relative URLs beginning with two slashes, which appear in older HTML, or IP-address URLs without a scheme.
Because the match is purely textual, the extractor does not parse HTML. Pasting a page's source gives you the URLs as they appear in the markup, including those inside script blocks and CSS, and href values wrapped in quotes will carry the closing quote only if there is no whitespace before it. For structured extraction from HTML, a parser is the right tool; this is for prose, chat logs, emails and plain text.
Deduplication and what counts as the same link
The deduplicate option compares strings exactly. Two entries are the same only if every character matches, so https://example.com/page and https://example.com/page/ are treated as different, as are the same URL with and without a trailing tracking parameter, and the same host written with and without www.
That strictness is the safe default, because normalising URLs correctly is harder than it looks: a trailing slash is significant on some servers, query parameter order can matter, and case is significant in a path while not in a host. A tool that guessed would silently merge links that point at different resources.
If what you want is a set of genuinely distinct destinations, clean the list before deduplicating. Strip tracking parameters, settle on a single form for trailing slashes, and lowercase the host. Extracting first and cleaning second is usually easier than the reverse.
Typical uses
The most common is auditing. Pulling every link out of a long email thread, a chat export, a migrated document or a support ticket gives you a checkable list, which is the first step in finding dead links or in confirming that a migration rewrote everything it should have.
It is also useful for building a reading or download queue from an unstructured source. A newsletter, a meeting note or a set of bookmarks pasted as text yields a clean list that can be pasted into a downloader, a link checker or a spreadsheet.
Everything runs in the page as you type, so nothing you paste is uploaded, which matters when the source text is a private email or an internal document. The count next to the output updates live, which is a quick way to see whether a document contains the number of links you expected.