Regex Tester
Test a regular expression live, with every match and capture group shown.
Break an emoji into its code points, modifiers and joiners.
The Emoji Unicode Lookup takes an emoji apart: every code point, with zero-width joiners, skin tone modifiers and variation selectors named for what they do, plus byte sizes and escape forms.
A modern emoji is rarely one character. A thumbs-up with a skin tone is two code points; a technologist is a person, a zero-width joiner and a laptop; a flag is two regional indicators. This tool takes an emoji apart and names every piece.
That is what you need when an emoji breaks something. A length check that counts UTF-16 units sees a family emoji as eleven characters. A database column that is not utf8mb4 rejects any emoji at all, because they need four bytes. A regular expression that matches one character will split a sequence in half. Each code point is listed with its role, its UTF-8 bytes and its escape forms for HTML, CSS, JavaScript and URLs, and common emoji are named.
A ZWJ sequence is shown piece by piece — person, joiner, laptop — which explains why it renders as two emoji on some platforms.
Skin tone modifiers and variation selectors are identified by what they do, not just by their code point.
The UTF-8 size, which is the number a database column limit actually counts and why utf8mb4 is required.
HTML entity, JavaScript escape, CSS escape and percent-encoding for every code point in the sequence.
Widely used emoji are named, and the full code point breakdown is given for every one regardless.
One, or a whole string of them with text mixed in.
Every code point is listed with its role — base character, joiner, modifier or variation selector.
UTF-8 bytes per emoji, which is what a database column limit counts.
HTML entity, JavaScript escape, CSS escape or percent-encoding for each code point.
U+200D, the character that glues an emoji sequence together. Person plus ZWJ plus laptop renders as one technologist emoji on a platform that supports it, and as two separate emoji on one that does not.
Almost always because the column is MySQL utf8 rather than utf8mb4. The old utf8 stores at most three bytes per character and every emoji needs four.
Variation selector-16, which asks for the colourful emoji rendering rather than the monochrome text one. Several older symbols need it to appear as emoji at all.
It names the common ones. For any emoji it always gives the full code point breakdown, byte size and escapes, which is the part no name can substitute for.
What people who use the Emoji Unicode Lookup think of it. Reviews come from visitors and are posted as written.
No ratings yet
Yours would be the first.
0 reviews
Newest first
No reviews yet
Be the first to rate the Emoji Unicode Lookup. It takes half a minute and no account.
Write the first reviewTest a regular expression live, with every match and capture group shown.
Convert an INI or config file into structured JSON, sections and all.
Convert HTML into valid JSX, with every attribute renamed correctly.
Generate Dart model classes with fromJson and toJson from a sample payload.
Generate deterministic UUIDs from a namespace and a name.
Tidy a TOML file: consistent quoting, ordered tables, keys before headers.
Generate and decode MongoDB ObjectIds, including their embedded timestamp.
Turn a CSV export into INSERT statements, with column types inferred.