emoji-regex
A regular expression to match all Emoji-only symbols as per the Unicode Standard.
Last updated 3 months ago by mathias .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install emoji-regex 
SYNC missed versions from official npm registry.

emoji-regex Build status

emoji-regex offers a regular expression to match all emoji symbols (including textual representations of emoji) as per the Unicode Standard.

This repository contains a script that generates this regular expression based on the data from Unicode v13. Because of this, the regular expression can easily be updated whenever new emoji are added to the Unicode standard.

Installation

Via npm:

npm install emoji-regex

In Node.js:

const emojiRegex = require('emoji-regex');
// Note: because the regular expression has the global flag set, this module
// exports a function that returns the regex rather than exporting the regular
// expression itself, to make it impossible to (accidentally) mutate the
// original regular expression.

const text = `
\u{231A}: ⌚ default emoji presentation character (Emoji_Presentation)
\u{2194}\u{FE0F}: ↔️ default text presentation character rendered as emoji
\u{1F469}: ???? emoji modifier base (Emoji_Modifier_Base)
\u{1F469}\u{1F3FF}: ???????? emoji modifier base followed by a modifier
`;

const regex = emojiRegex();
let match;
while (match = regex.exec(text)) {
  const emoji = match[0];
  console.log(`Matched sequence ${ emoji } — code points: ${ [...emoji].length }`);
}

Console output:

Matched sequence ⌚ — code points: 1
Matched sequence ⌚ — code points: 1
Matched sequence ↔️ — code points: 2
Matched sequence ↔️ — code points: 2
Matched sequence ???? — code points: 1
Matched sequence ???? — code points: 1
Matched sequence ???????? — code points: 2
Matched sequence ???????? — code points: 2

To match emoji in their textual representation as well (i.e. emoji that are not Emoji_Presentation symbols and that aren’t forced to render as emoji by a variation selector), require the other regex:

const emojiRegex = require('emoji-regex/text.js');

Additionally, in environments which support ES2015 Unicode escapes, you may require ES2015-style versions of the regexes:

const emojiRegex = require('emoji-regex/es2015/index.js');
const emojiRegexText = require('emoji-regex/es2015/text.js');

Author

twitter/mathias
Mathias Bynens

License

emoji-regex is available under the MIT license.

Current Tags

  • 9.0.0                                ...           latest (3 months ago)

24 Versions

  • 9.0.0                                ...           3 months ago
  • 8.0.0                                ...           a year ago
  • 7.0.3                                ...           2 years ago
  • 7.0.2                                ...           2 years ago
  • 7.0.1                                ...           2 years ago
  • 7.0.0                                ...           2 years ago
  • 6.5.1                                ...           3 years ago
  • 6.5.0                                ...           3 years ago
  • 6.4.3                                ...           3 years ago
  • 6.4.2                                ...           3 years ago
  • 6.4.1                                ...           3 years ago
  • 6.4.0                                ...           3 years ago
  • 6.3.0                                ...           3 years ago
  • 6.2.0                                ...           3 years ago
  • 6.1.3                                ...           3 years ago
  • 6.1.1                                ...           3 years ago
  • 6.1.0                                ...           4 years ago
  • 6.0.0                                ...           5 years ago
  • 5.0.0                                ...           5 years ago
  • 4.0.0                                ...           6 years ago
  • 3.0.0                                ...           6 years ago
  • 2.0.0                                ...           6 years ago
  • 1.0.1                                ...           6 years ago
  • 1.0.0                                ...           6 years ago
Maintainers (1)
Downloads
Today 56,944
This Week 194,266
This Month 434,227
Last Day 69,680
Last Week 371,767
Last Month 1,504,551
Dependencies (0)
None
Dev Dependencies (7)
Dependents (278)

Copyright 2014 - 2016 © taobao.org |