Emoji Sequences
Multi-character emoji constructed by combining base emoji with modifiers, ZWJ characters, or variation selectors. Types include keycap sequences (#️⃣), flag sequences (🇺🇸), and ZWJ sequences (👨💻).
What are Emoji Sequences?
An emoji sequence is a multi-code-point combination that renders as a single emoji. Because the original Unicode encoding of emoji as individual code points could not cover every combination users and vendors want to express, the Unicode Standard defines formal rules for assembling sequences. Each sequence type has its own encoding mechanism and a defined set of valid combinations.
Basic Emoji — Single Code Points
The simplest emoji are single code points: - 😀 U+1F600 GRINNING FACE - ❤ U+2764 HEAVY BLACK HEART - ★ U+2605 BLACK STAR
Many of these code points are inherited from older character standards (dingbats, symbols) and gained emoji presentation through the Emoji Presentation property.
Emoji Keycap Sequences
A keycap sequence consists of a base digit or symbol, followed by U+FE0F (Variation Selector-16, forcing emoji presentation), followed by U+20E3 (COMBINING ENCLOSING KEYCAP). The result is a digit enclosed in a square button graphic:
#⃣ = U+0023 + U+FE0F + U+20E3
1⃣ = U+0031 + U+FE0F + U+20E3
There are twelve defined keycap sequences: the digits 0–9, the hash sign (#), and the asterisk (*).
Flag Sequences — Regional Indicators
Country flag emoji are encoded as pairs of Regional Indicator Symbol Letters (U+1F1E6 to U+1F1FF, corresponding to A–Z). The two letters spell the ISO 3166-1 alpha-2 country code:
🇺🇸 = U+1F1FA (🇺) + U+1F1F8 (🇸) — US
🇯🇵 = U+1F1EF (🇯) + U+1F1F5 (🇵) — JP
Platforms that choose not to display flag emoji may show the two letter codes instead (e.g., "US" or "JP"), which is the graceful fallback.
Tag Sequences — Subdivision Flags
For flags of subdivisions not covered by ISO 3166-1 (like England 🏴, Scotland 🏴, and Wales 🏴), Unicode uses tag sequences. These start with U+1F3F4 (BLACK FLAG), followed by a sequence of tag characters (U+E0061–U+E007A), and end with U+E007F (CANCEL TAG):
🏴 = U+1F3F4 + U+E0067 U+E0062 U+E0065 U+E006E U+E0067 + U+E007F
(BLACK FLAG + g b e n g + CANCEL TAG = "gbeng" = England)
Emoji Modifier Sequences — Skin Tones
A modifier sequence consists of an emoji base character that supports skin tone modification (such as 👋 or 👍) followed by one of five Fitzpatrick scale modifier code points (U+1F3FB through U+1F3FF):
👋🏽 = U+1F44B (WAVING HAND) + U+1F3FD (MEDIUM SKIN TONE)
ZWJ Sequences
A Zero Width Joiner (ZWJ) sequence uses U+200D to combine multiple emoji into one composite image:
👨👩👧 = U+1F468 + U+200D + U+1F469 + U+200D + U+1F467
MAN + ZWJ + WOMAN + ZWJ + GIRL
🏳️🌈 = U+1F3F3 + U+FE0F + U+200D + U+1F308
WHITE FLAG + VS16 + ZWJ + RAINBOW
ZWJ sequences are the most flexible mechanism and are used for family compositions, gender variations, profession emoji (👩💻), and pride flags.
Quick Facts
| Sequence Type | Mechanism | Example |
|---|---|---|
| Basic emoji | Single code point | 😀 U+1F600 |
| Keycap | Base + FE0F + 20E3 | #⃣ |
| Regional flag | Two Regional Indicators | 🇺🇸 US |
| Tag sequence | Black Flag + tag chars | 🏴 England |
| Modifier | Emoji base + Fitzpatrick | 👋🏽 |
| ZWJ sequence | Emoji + ZWJ + Emoji | 👨👩👧 Family |
| Variation selector | Code point + FE0F or FE0E | ❤️ vs ❤ |
| Standard | Unicode Emoji Standard (UTS#51) |
相关术语
表情符号 中的更多内容
起源于日本手机的图形Unicode字符,现有3,790多个表情符号分布在多个区块(表情、杂项符号与象形文字、交通等)。
Five Fitzpatrick scale modifiers (U+1F3FB–U+1F3FF, 🏻–🏿) that change human emoji skin color. …
26个字符(U+1F1E6–U+1F1FF,🇦–🇿),按照ISO 3166-1国家代码成对组合形成国旗表情符号,🇺+🇸 = 🇺🇸。
由多个表情符号通过零宽连接符(U+200D)组合而成的表情符号,👨👩👧👦 = 男人+ZWJ+女人+ZWJ+女孩+ZWJ+男孩,目前定义了约600个ZWJ序列。
紧跟在人形表情符号后面以改变肤色的菲茨帕特里克色度修饰符(U+1F3FB–U+1F3FF)。