npm install emoji-regex

A regular expression to match all Emoji-only symbols as per the Unicode Standard.

About emoji-regex

In today's digital communication, emojis have become an integral part of expressing emotions and ideas concisely and effectively. The npm package "emoji-regex" serves a crucial role in this dynamic environment by providing a robust regular expression that matches all Emoji-only symbols as defined by the Unicode Standard. This functionality is essential for developers looking to implement features that require emoji recognition and processing in their applications. Whether it's for filtering content, extracting emojis for analysis, or ensuring the integrity of text input, "emoji-regex" offers a reliable solution to handle emojis across various platforms and devices.

To integrate "emoji-regex" into your project, you can easily add it using npm, the Node package manager. By running the command `npm install emoji-regex`, developers can quickly install the package and begin utilizing its capabilities within their applications. Once installed, the package allows for seamless integration with JavaScript and Node.js projects, providing a straightforward API that developers can leverage to enhance their applications' ability to interact with emoji data. This ease of installation and use makes "emoji-regex" an attractive choice for developers looking to streamline their development process and improve the emoji handling capabilities of their projects.

The key benefit of using "emoji-regex" lies in its adherence to the Unicode Standard, ensuring that the regular expression stays current with the latest emoji characters. As the Unicode Standard evolves, incorporating new emojis with each release, "emoji-regex" is continually updated to include these new characters, thereby maintaining its effectiveness and relevance. This commitment to staying up-to-date makes "emoji-regex" an indispensable tool for developers who need their applications to support the widest range of emoji symbols, ensuring a consistent and engaging user experience across all user interactions involving emojis.

More from mathiasbynens

mathiasbynens npm packages

Find the best node modules for your project.

Search npm

emoji-regex

A regular expression to match all Emoji-only symbols as per the Unicode Standard...

Read more

Dependencies

Core dependencies of this npm package and its dev dependencies.

@unicode/unicode-15.1.0, emoji-test-regex-pattern, mocha

Documentation

A README file for the emoji-regex code repository. View Code

emoji-regex Build status emoji-regex on npm

emoji-regex offers a regular expression to match all emoji symbols and sequences (including textual representations of emoji) as per the Unicode Standard. It’s based on emoji-test-regex-pattern, which generates (at build time) the regular expression pattern based on the Unicode Standard. As a result, emoji-regex can easily be updated whenever new emoji are added to Unicode.

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();
for (const match of text.matchAll(regex)) {
  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

For maintainers

How to update emoji-regex after new Unicode Standard releases

  1. Update emoji-test-regex-pattern as described in its repository.

  2. Bump the emoji-test-regex-pattern dependency to the latest version.

  3. Update the Unicode data dependency in package.json by running the following commands:

    # Example: updating from Unicode v13 to Unicode v14.
    npm uninstall @unicode/unicode-13.0.0
    npm install @unicode/unicode-14.0.0 --save-dev
    
  4. Generate the new output:

    npm run build
    
  5. Verify that tests still pass:

    npm test
    

How to publish a new release

  1. On the main branch, bump the emoji-regex version number in package.json:

    npm version patch -m 'Release v%s'
    

    Instead of patch, use minor or major as needed.

    Note that this produces a Git commit + tag.

  2. Push the release commit and tag:

    git push && git push --tags
    

    Our CI then automatically publishes the new release to npm.

Author

twitter/mathias
Mathias Bynens

License

emoji-regex is available under the MIT license.