extract-email-address

1.4.0 • Public • Published

extract-email-address 📧

Travis build status Coveralls NPM version Canonical Code Style Twitter Follow

Extracts email address from an arbitrary text input.

API

import extractEmail from 'extract-email-address';
import type {
  EmailMatchType,
} from 'extract-email-address';
 
extractEmail(input: string): $ReadOnlyArray<EmailMatchType>;
 

Usage

import extractEmail from 'extract-email-address';
 
extractEmail('extracts email from anywhere within the input gajus@gajus.com');
// [{email: 'gajus@gajus.com'}]
 
extractEmail('extracts multiple emails located anywhere within the input: foo@gajus.com, bar@gajus.com');
// [{email: 'foo@gajus.com'}, {email: 'bar@gajus.com'}]
 
extractEmail('extracts all sorts of obfuscated emails, e.g. f o o @ b a r . c o m or baz [at] qux [dot] com');
// [{email: 'foo@bar.com'}, {email: 'baz@qux.com'}]
 
extractEmail('extracts tagged emails, e.g. gajus+foo@gajus.com');
// [{email: 'gajus+foo@gajus.com'}]
 
extractEmail('extracts emails surrounded by odd unicode characters, e.g. 邮箱:gajus@gajus.com');
// [{email: 'gajus@gajus.com'}]
 
extractEmail('extracts emails surrounded by emojis, e.g. 📧gajus@gajus.com');
// [{email: 'gajus@gajus.com'}]
 
extractEmail('excludes invalid emails with invalid TLDs, e.g. gajus@gajus.png');
// []
 
extractEmail('ignores invalid emails foo@bar');
// []
 

Filtering results

Some matches might be syntactically valid email addresses, but not actual email addresses, e.g. apple-touch-icon@2.png.

extract-email-address uses a list of valid top-level domains to filter out matches that are definitely not emails (such as png example), but you might still need to filter out domain specific false-positives.

Related projects

  • extract-date – Extracts date from an arbitrary text input.
  • extract-price – Extracts price from an arbitrary text input.
  • extract-time – Extracts time from an arbitrary text input.

Dependents (3)

Package Sidebar

Install

npm i extract-email-address

Weekly Downloads

2,089

Version

1.4.0

License

BSD-3-Clause

Unpacked Size

16 kB

Total Files

20

Last publish

Collaborators

  • gajus