/go-emoji

Golang Emoji parser, converter to html and images

Primary LanguageGoMIT LicenseMIT

go-emoji

Build Status

Golang Emoji parser, converter to html and images

Usage

Parse

parser := NewEmojiParser()
var text = "a #💩 #and #🍦 #😳"
var i = -1
replased := parser.ReplaceAllStringFunc(text, func(s string) string {
	i++
	return strconv.Itoa(i)
})
// replased == "a #0 #and #1 #2"

Convert

To HTML-Entities

parser := NewEmojiParser()
text := "a #💩 #and #🍦 #😳"
replased := parser.ToHtmlEntities(text)
// replased == "a #💩 #and #🍦 #😳"

To HTML-Images

parser := NewEmojiParser()
text := "a #💩 #and #🍦 #😳"
replased := parser.ToHtmlImages(text)

result:

a #<img
class="emoji"
draggable="false"
alt="💩"
src="https://twemoji.maxcdn.com/36x36/1f4a9.png"> #and #<img
class="emoji"
draggable="false"
alt="🍦"
src="https://twemoji.maxcdn.com/36x36/1f366.png"> #<img
class="emoji"
draggable="false"
alt="😳"
src="https://twemoji.maxcdn.com/36x36/1f633.png">

References

  1. Instagram developers blog
  2. Twemoji SVG https://github.com/twitter/twemoji
  3. Unicode Emojii data emoji-data.txt
  4. Unicode Tech Report 51 tech report
  5. Contributors of the same library for the PHP https://github.com/urakozz/php-emoji-regex/pulls?q=is%3Apr+is%3Aclosed