User Rating 0.0 β˜…β˜…β˜…β˜…β˜…
Total Usage 0 times
e.g. Hey (smile) how are you? (thumbsup)
Replacements: 0 Characters: 0
ShortcodeASCII / Text
Is this tool helpful?

Your feedback helps us improve.

β˜… β˜… β˜… β˜… β˜…

About

Google Hangouts introduced approximately 850 graphical emoticons in May 2013, replacing the legacy text-based representations many users relied on. This converter restores those emoticon shortcodes to their classic ASCII equivalents. Paste any Hangouts message containing shortcodes like (smile), (heart), or (shrug) and receive the corresponding text emoticons such as :-), <3, or Β―\_(ツ)_/Β―. The mapping covers standard smileys, gestures, animals, objects, and flags. Note: this tool approximates emotional intent. Some graphical emoticons have no universally agreed ASCII form. In those cases, a descriptive bracketed label like [penguin] is returned.

emoticon converter google hangouts ascii emoticons text emoticons emoji to text hangouts emoticons emoticon shortcodes

Formulas

The converter applies a deterministic string replacement algorithm. Each Hangouts emoticon shortcode is mapped to exactly one ASCII output.

convert(input) = input.replace(patterni, asciii) for each i ∈ D

Where D is the emoticon dictionary of size n 850. Shortcodes are sorted by descending length to prevent partial matches. For example, (laughing) must be matched before (laugh). The regex pattern for each shortcode escapes special characters: parentheses, pipes, and backslashes. The replacement runs in O(n β‹… m) time where m is the input string length. A pre-compiled combined regex reduces this to a single pass: O(m).

Frequently Asked Questions

When no universally recognized ASCII emoticon exists for a Hangouts shortcode, the converter outputs a descriptive bracketed label such as [penguin] or [cactus]. This preserves the semantic meaning of the original emoticon without inventing misleading ASCII art.
Yes. The regex engine processes shortcodes using word-boundary-aware matching with parentheses as natural delimiters. Adjacent shortcodes like (smile)(heart) are resolved independently to :-)<3. Nested parentheses within shortcodes are escaped to prevent regex conflicts.
The dictionary keys are sorted by string length in descending order before compilation into a single alternation regex. This ensures (laughing) is matched before (laugh), and (thumbsup) before (thumb). The regex uses exact shortcode boundaries defined by the parentheses.
Yes. The tool includes a bidirectional mode. Toggle the direction selector to "ASCII β†’ Shortcode" and the converter will map text emoticons like :-) back to (smile). Note that reverse mapping can be ambiguous. For instance, :) and :-) both map to (smile), so the reverse uses the shortest ASCII form as the lookup key.
Strict 7-bit ASCII has no representation for concepts like music notes, celestial bodies, or complex gestures. The converter uses Unicode characters like β™ͺ (U+266A) for (music) and β˜€ (U+2600) for (sun) when they are widely supported across modern terminals, browsers, and messaging clients. These are the de facto standard text representations.