To extract links from text, paste the source into the URL Extractor, which detects HTTP, HTTPS, and www-style web addresses, normalizes each candidate with the browser URL parser, removes duplicate results, and prepares a one-URL-per-line TXT file. This local text operation is designed for references embedded in notes, exported messages, logs, documentation, research drafts, or copied page text. The scanner recognizes candidates that begin with http://, https://, or www, and scheme matching is case-insensitive. A www candidate receives https:// before validation, so a mixed-case host can become a complete HTTPS URL. Results are normalized URL strings rather than exact copies of the source spelling. The tool accepts up to 1,000,000 UTF-16 code units of input and up to 10,000 unique results; over-limit input or output is rejected instead of being silently truncated. Scanning, parsing, previewing, and download creation happen in the current browser tab. The extractor does not visit or safety-check the addresses it finds, so use the output as a list of parsed references, not as proof that any destination is safe or available. Invalid URL candidates are skipped without stopping valid neighbors, while editing the input clears the previous result for a fresh scan.

What the scanner recognizes
Detection starts with the characters present in pasted plain text. The supported candidate scope is deliberately narrow and does not attempt to interpret every document grammar.
| Candidate type | How it is handled |
|---|---|
| http:// or https:// address | Detected with case-insensitive scheme matching, then validated and normalized. |
| www-style address | Detected, then given an https:// prefix before browser URL validation. |
| Bare domain without www | Not detected because it lacks a supported prefix. |
| Email address | Not detected as a web URL. |
| ftp://, mailto:, file://, or javascript: | Outside the declared detection scope. |
Detection scope is separate from document structure. Even when a URL appears in HTML source, the scanner does not promise to recover every hidden link target. Use a format-aware parser when the relationships between fields, labels, and destinations matter.
Run the URL extraction
Use this workflow when your goal is a normalized, deduplicated list of web addresses from ordinary text.
- Paste the source text. Include the block containing HTTP, HTTPS, or www-style addresses. Stay within the 1,000,000 UTF-16 code-unit input limit. The source remains in the current browser tab throughout processing.
- Run the scan and review the preview. The tool removes common surrounding punctuation, adds https:// to www candidates, validates each candidate with the browser URL parser, and removes duplicates after normalization. First-seen order is retained. Review the normalized spellings, punctuation boundaries, and unique URL count before continuing. Invalid candidates are skipped without preventing valid neighbors from appearing.
- Download the TXT result. Choose Download to save a UTF-8 text file containing the same URLs shown in the preview, with one URL per line and LF line separators.
Editing the input clears the previous result, which helps prevent a new scan from being confused with an older extraction.
Review browser normalization
The preview is the review point because a valid URL may not look identical to the pasted text. The browser URL constructor performs structural parsing and normalization before duplicates are compared. MDN's URL API documentation describes this browser parsing model, while the WHATWG URL Standard defines the underlying standard behavior.
- Hostnames become lowercase.
- A missing root path can become a trailing slash.
- Default URL serialization rules apply to the validated result.
- Valid fragments, queries, ports, paths, and credentials remain in the output.
Deduplication occurs after serialization and uses exact equality between normalized values. For example, https://EXAMPLE.com and https://example.com/ become one entry. URLs that differ by query order, fragment, path case, credentials, or a meaningful trailing path remain separate because their serialized values differ. Tracking parameters are not stripped, so the normalized list does not automatically remove campaign or other tracking information.
Handle punctuation boundaries
Common prose punctuation is handled conservatively to avoid carrying sentence endings into the result.
- Terminal periods, exclamation marks, question marks, and colons are removed from a candidate.
- A closing parenthesis, bracket, or brace is removed only when it is unmatched within that candidate.
- A balanced path such as /a_(b) is preserved, while the prose wrapper around (https://example.org/) is removed.
- Commas and semicolons are treated as candidate boundaries.
Because commas and semicolons can be meaningful inside some URLs, boundary handling favors ordinary prose and comma-separated lists over preserving every unusual path verbatim. When either character is part of the intended address, verify the original source or encode it before extraction.
Know the limits and local processing
Both the input and result have explicit boundaries, and both are checked before the tool reports success.
- Input: Up to 1,000,000 UTF-16 code units are accepted. Empty input, malformed UTF-16 surrogate sequences, and over-limit text are rejected before scanning.
- Results: Up to 10,000 unique URLs are accepted. If normalization produces more unique results, the result is rejected rather than silently truncated.
- Local processing: Source content never leaves the current browser tab. No server account, processing history, or external dataset participates in the operation.
- No destination requests: The tool does not crawl addresses, verify reachability, follow redirects, fetch titles, check safety, resolve short links, or determine whether a destination is trustworthy.
- Visible credentials: Credentials embedded in a URL remain visible because removing them would change the parsed address. Avoid pasting secrets, tokens, signed links, private hosts, or personal data unless the destination and local device are trusted.
- Download behavior: The TXT file contains the same newline-joined strings shown in the preview. A temporary Blob URL is created only when Download is clicked and is revoked immediately afterward.
Match the method to the source format
Use the URL Extractor when the addresses are literal text. If they are stored in spreadsheet hyperlinks rather than visible text, Extract URLs From Excel Hyperlinks Without VBA covers the spreadsheet-specific route.
| Source | Recommended approach |
|---|---|
| Notes, exported messages, logs, documentation, research drafts, or copied page text | Use the URL Extractor to scan visible URL candidates and create a normalized list. |
| HTML href attributes, CSV fields, Markdown destinations, or mail archives | Use a format-aware parser when the document structure must be interpreted correctly. |
| Excel hyperlink formulas or cells | Follow a spreadsheet-specific extraction method before cleaning the resulting list. |
Plain-text extraction is appropriate when the URL itself is what you need. It does not fetch each destination, read linked pages, or turn a document’s visible labels into a structured relationship map.
Check the final list
Review the preview and downloaded file before using the addresses:
- Confirm the unique count and spot-check the hosts and paths.
- Look for lowercase hostnames, added root slashes, or other browser normalization.
- Inspect results near commas, semicolons, and trailing prose punctuation.
- Check for credentials or sensitive query information before sharing the list.
- Use separate reachability and safety checks when a destination will be opened or trusted.
- Confirm that the downloaded TXT still contains one normalized URL per line.