Expand description
§emoji-sanitize
Strip Unicode characters that emoji rendering uses but plain-text analysis doesn’t need: variation selectors (U+FE00–U+FE0F), the zero-width joiner (U+200D), and skin-tone modifiers (U+1F3FB–U+1F3FF).
Two modes:
strip_modifiers— keep the base emoji codepoint, drop modifiers.👨👩👧becomes👨👩👧.strip_all_emoji— drop everything in the emoji blocks too.
§Example
use emoji_sanitize::{strip_modifiers, strip_all_emoji};
let s = "Hi \u{1F468}\u{200D}\u{1F469}\u{200D}\u{1F467}!";
assert_eq!(strip_modifiers(s), "Hi \u{1F468}\u{1F469}\u{1F467}!");Functions§
- is_
emoji - True for emoji codepoints in the common ranges (BMP misc symbols, SMP misc, SMP supplemental, emoticons, transport/map symbols).
- strip_
all_ emoji - Strip everything we recognize as emoji or emoji-modifier.
- strip_
modifiers - Strip variation selectors, ZWJ, and skin-tone modifiers — keeping the base emoji codepoints.