Skip to content
ZeroServer.tools

Extract Email Addresses

Pull every email address out of a block of text.

Emails Found: 0Characters: 0

Extracting emails from text

Paste any text — an email thread, a CSV dump, a web page's source — and this tool scans it for valid-looking email addresses using a standard pattern, then lets you deduplicate, sort, and switch between newline- and comma-separated output. Addresses are lowercased for reliable de-duplication. Nothing is uploaded; the scan happens entirely in your browser.

Built and maintained by Meet Shah · Last updated

What this tool is used for

  • Pulling addresses out of a pasted document to check them.
  • Collecting contacts from a plain-text export.
  • Auditing a text for addresses that should have been redacted.
  • Extracting addresses from a signature block.
  • Getting a list to deduplicate before an import.

Frequently Asked Questions

Can a regex fully validate an email address?
No. The RFC 5322 grammar permits quoted local parts, comments and nested constructs; the fully compliant regex is thousands of characters and still cannot confirm the mailbox exists. Extraction uses a pragmatic pattern that matches real-world addresses.
Are plus-addresses handled?
Yes — [email protected] is valid and increasingly common for filtering. Note that some providers treat the tag as significant and others strip it, so two such addresses may or may not be the same mailbox.
What about obfuscated addresses?
Forms like "name [at] example [dot] com" are not matched, because they are not addresses — they are prose describing one. Deliberate obfuscation exists precisely to defeat extractors like this.
Is scraping emails from a page legal?
Collecting addresses to send unsolicited mail is restricted under GDPR, CAN-SPAM and PECR, regardless of how they were obtained. Extracting from your OWN documents is fine; harvesting third-party sites for outreach generally is not.
Are addresses case-sensitive?
The domain is not, and the local part technically IS per the RFC — though virtually every provider treats it case-insensitively. Lowercase the domain when deduplicating; lowercasing the local part is conventional but not strictly correct.
Should extracted addresses be lowercased?
The domain safely, the local part strictly not — it is case-sensitive by the standard, even though nearly every provider ignores that. Lowercasing everything is the pragmatic choice, and it is technically a data change.
How do I deduplicate reliably?
Normalise the domain to lowercase and compare; do not attempt to fold plus-tags or dots, since those rules are provider-specific. Treating `[email protected]` and `[email protected]` as one is right for Gmail and wrong in general.
Why do addresses in a mailto: link differ?
Because a mailto URL can carry query parameters — subject, body, cc — and may be percent-encoded. The address must be decoded and split at the first `?` before it is usable.

Common errors and gotchas

  • Missing addresses that were obfuscated as 'name at domain dot com'.
  • Capturing trailing punctuation, which makes the address invalid.
  • Missing legal but unusual local parts that a simple pattern rejects.
  • Using extracted addresses for unsolicited mail, which is a legal issue rather than a technical one.
  • Assuming an extracted address is deliverable, which only sending establishes.

Related Text Tools tools

Private & free — this tool runs entirely in your browser.