From 9b9173b23052f738910322b9de2155deca1f7a83 Mon Sep 17 00:00:00 2001 From: neko <52202080+akiyamaneko@users.noreply.github.com> Date: Wed, 23 Sep 2020 12:18:37 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BC=98=E5=8C=96EMOJ=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/hutool/extra/emoji/EmojiUtil.java | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/hutool-extra/src/main/java/cn/hutool/extra/emoji/EmojiUtil.java b/hutool-extra/src/main/java/cn/hutool/extra/emoji/EmojiUtil.java index b1b0612dc..2c2dff845 100644 --- a/hutool-extra/src/main/java/cn/hutool/extra/emoji/EmojiUtil.java +++ b/hutool-extra/src/main/java/cn/hutool/extra/emoji/EmojiUtil.java @@ -38,22 +38,7 @@ public class EmojiUtil { * @since 4.5.11 */ public static boolean containsEmoji(String str) { - if (str == null) { - return false; - } - final char[] chars = str.toCharArray(); - EmojiTrie.Matches status; - for (int i = 0; i < chars.length; i++) { - for (int j = i + 1; j <= chars.length; j++) { - status = EmojiManager.isEmoji(Arrays.copyOfRange(chars, i, j)); - if (status.impossibleMatch()) { - break; - } else if (status.exactMatch()) { - return true; - } - } - } - return false; + return EmojiManager.containsEmoji(str); } /** From a8fb1c7b14938c0037233a77094c997e8b419082 Mon Sep 17 00:00:00 2001 From: neko <52202080+akiyamaneko@users.noreply.github.com> Date: Wed, 23 Sep 2020 12:43:01 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/java/cn/hutool/extra/emoji/EmojiUtilTest.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/hutool-extra/src/test/java/cn/hutool/extra/emoji/EmojiUtilTest.java b/hutool-extra/src/test/java/cn/hutool/extra/emoji/EmojiUtilTest.java index fe1620c58..f307e4fe3 100644 --- a/hutool-extra/src/test/java/cn/hutool/extra/emoji/EmojiUtilTest.java +++ b/hutool-extra/src/test/java/cn/hutool/extra/emoji/EmojiUtilTest.java @@ -16,4 +16,13 @@ public class EmojiUtilTest { String alias = EmojiUtil.toAlias("😄"); Assert.assertEquals(":smile:", alias); } + + @Test + public void containsEmojiTest() { + boolean containsEmoji = EmojiUtil.containsEmoji("测试一下是否包含EMOJ:😄"); + Assert.assertEquals(containsEmoji, true); + boolean notContainsEmoji = EmojiUtil.containsEmoji("不包含EMOJ:^_^"); + Assert.assertEquals(notContainsEmoji, false); + + } }