Go每日一库之167:emoji(emoji表情)

2023-09-30 08:54:30 浏览数 (2)

大家在使用微信或钉钉聊天时,一定使用过表情符号。今天就给大家介绍一个能够在终端上显示emoji表情符号的包:emoji。

实现原理:emoji表情符号实际上就是在unicode编码表中有定义的一个编码。通过将符号的文字表示和对应的unicode编码进行一一对应,在使用时对文字符号进行替换成rune字符输出即可。

基本使用:使用也非常简单,如下:

代码语言:javascript复制
package main

import (
    "fmt"

    "github.com/kyokomi/emoji/v2"
)

func main() {
    fmt.Println("Hello World Emoji!")

    emoji.Println(":beer: Beer!!!")

    pizzaMessage := emoji.Sprint("I like a :pizza: and :sushi:!!")
    fmt.Println(pizzaMessage)
}

输出效果:

程序中的符号短名称可以参考源文件emoji_codemap.go中的映射表。该映射表中的表情符号来源于以下4个数据源:

  • emoji-v5:https://raw.githubusercontent.com/CodeFreezr/emojo/master/db/v5/emoji-v5.json
  • unicode编码:http://www.unicode.org/emoji/charts/emoji-list.html
  • gemoji符号:https://raw.githubusercontent.com/github/gemoji/master/db/emoji.json
  • iamcal:https://github.com/iamcal/emoji-data/raw/master/emoji.json

0 人点赞