Class EmojiKit

java.lang.Object
org.miaixz.bus.extra.emoji.EmojiKit

public class EmojiKit extends Object
基于https://github.com/vdurmont/emoji-java的Emoji表情工具类 emoji-java文档以及别名列表见:...
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static boolean
    是否包含Emoji表情的Unicode符
    static List<String>
    提取字符串中所有的Emoji Unicode
    static com.vdurmont.emoji.Emoji
    get(String alias)
    通过别名获取Emoji
    static Set<com.vdurmont.emoji.Emoji>
    通过tag方式获取对应的所有Emoji表情
    static boolean
    是否为Emoji表情的Unicode符
    static String
    去除字符串中所有的Emoji Unicode字符
    static String
    将字符串中的Unicode Emoji字符转换为别名表现形式(两个":"包围的格式)
    static String
    toAlias(String text, com.vdurmont.emoji.EmojiParser.FitzpatrickAction fitzpatrickAction)
    将字符串中的Unicode Emoji字符转换为别名表现形式(两个":"包围的格式),别名后会增加"|"并追加fitzpatrick类型 例如:👦🏿 转换为 :boy|type_6:
    static String
    toHtml(String text)
    将字符串中的Unicode Emoji字符转换为HTML表现形式(Hex方式)
    static String
    toHtml(String text, boolean isHex)
    将字符串中的Unicode Emoji字符转换为HTML表现形式,例如:
    static String
    将字符串中的Unicode Emoji字符转换为HTML 16进制表现形式
    static String
    将子串中的Emoji别名(两个":"包围的格式)和其HTML表示形式替换为为Unicode Emoji符号

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • EmojiKit

      public EmojiKit()
  • Method Details

    • isEmoji

      public static boolean isEmoji(String text)
      是否为Emoji表情的Unicode符
      Parameters:
      text - 被测试的字符串
      Returns:
      是否为Emoji表情的Unicode符
    • containsEmoji

      public static boolean containsEmoji(String text)
      是否包含Emoji表情的Unicode符
      Parameters:
      text - 被测试的字符串
      Returns:
      是否包含Emoji表情的Unicode符
    • getByTag

      public static Set<com.vdurmont.emoji.Emoji> getByTag(String tag)
      通过tag方式获取对应的所有Emoji表情
      Parameters:
      tag - tag标签,例如“happy”
      Returns:
      Emoji表情集合,如果找不到返回null
    • get

      public static com.vdurmont.emoji.Emoji get(String alias)
      通过别名获取Emoji
      Parameters:
      alias - 别名,例如“smile”
      Returns:
      Emoji对象,如果找不到返回null
    • toUnicode

      public static String toUnicode(String text)
      将子串中的Emoji别名(两个":"包围的格式)和其HTML表示形式替换为为Unicode Emoji符号

      例如:

        :smile:  替换为 😄
       &#128516; 替换为 😄
       :boy|type_6: 替换为 👦🏿
       
      Parameters:
      text - 包含Emoji别名或者HTML表现形式的字符串
      Returns:
      替换后的字符串
    • toAlias

      public static String toAlias(String text)
      将字符串中的Unicode Emoji字符转换为别名表现形式(两个":"包围的格式)

      例如: 😄 转换为 :smile:

      EmojiParser.FitzpatrickAction参数被设置为EmojiParser.FitzpatrickAction.PARSE,则别名后会增加"|"并追加fitzpatrick类型

      例如:👦🏿 转换为 :boy|type_6:

      EmojiParser.FitzpatrickAction参数被设置为EmojiParser.FitzpatrickAction.REMOVE,则别名后的"|"和类型将被去除

      例如:👦🏿 转换为 :boy:

      EmojiParser.FitzpatrickAction参数被设置为EmojiParser.FitzpatrickAction.IGNORE,则别名后的类型将被忽略

      例如:👦🏿 转换为 :boy:🏿

      Parameters:
      text - 包含Emoji Unicode字符的字符串
      Returns:
      替换后的字符串
    • toAlias

      public static String toAlias(String text, com.vdurmont.emoji.EmojiParser.FitzpatrickAction fitzpatrickAction)
      将字符串中的Unicode Emoji字符转换为别名表现形式(两个":"包围的格式),别名后会增加"|"并追加fitzpatrick类型 例如:👦🏿 转换为 :boy|type_6:
      Parameters:
      text - 包含Emoji Unicode字符的字符串
      fitzpatrickAction - EmojiParser.FitzpatrickAction
      Returns:
      替换后的字符串
    • toHtmlHex

      public static String toHtmlHex(String text)
      将字符串中的Unicode Emoji字符转换为HTML 16进制表现形式

      例如:👦🏿 转换为 &#x1f466;

      Parameters:
      text - 包含Emoji Unicode字符的字符串
      Returns:
      替换后的字符串
    • toHtml

      public static String toHtml(String text)
      将字符串中的Unicode Emoji字符转换为HTML表现形式(Hex方式)

      例如:👦🏿 转换为 &#128102;

      Parameters:
      text - 包含Emoji Unicode字符的字符串
      Returns:
      替换后的字符串
    • toHtml

      public static String toHtml(String text, boolean isHex)
      将字符串中的Unicode Emoji字符转换为HTML表现形式,例如:
       如果为hex形式,👦🏿 转换为 &#x1f466;
       否则,👦🏿 转换为 &#128102;
       
      Parameters:
      text - 包含Emoji Unicode字符的字符串
      isHex - 是否hex形式
      Returns:
      替换后的字符串
    • removeAllEmojis

      public static String removeAllEmojis(String text)
      去除字符串中所有的Emoji Unicode字符
      Parameters:
      text - 包含Emoji字符的字符串
      Returns:
      替换后的字符串
    • extractEmojis

      public static List<String> extractEmojis(String text)
      提取字符串中所有的Emoji Unicode
      Parameters:
      text - 包含Emoji字符的字符串
      Returns:
      Emoji字符列表