Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 如何在scala中识别表情符号?_Regex_String_Scala_Twitter_Emoji - Fatal编程技术网

Regex 如何在scala中识别表情符号?

Regex 如何在scala中识别表情符号?,regex,string,scala,twitter,emoji,Regex,String,Scala,Twitter,Emoji,我正在处理来自Twitter Api的推文,很多推文都有表情符号。我试图追踪最常用的表情符号,但实际上我很难识别它们 我用:来识别表情符号 我不知道如何判断字符串是否包含表情符号。我尝试过将regex与emoji数据“unified”字段一起使用,我尝试过只检查字符串是否包含该字段。我真的不知道如何检查表情符号。。任何帮助都将不胜感激 val pattern = new Regex("(${a.unified})") (pattern findAllIn text).mkString(",")

我正在处理来自Twitter Api的推文,很多推文都有表情符号。我试图追踪最常用的表情符号,但实际上我很难识别它们

我用:来识别表情符号


我不知道如何判断字符串是否包含表情符号。我尝试过将regex与emoji数据“unified”字段一起使用,我尝试过只检查字符串是否包含该字段。我真的不知道如何检查表情符号。。任何帮助都将不胜感激

val pattern = new Regex("(${a.unified})")
(pattern findAllIn text).mkString(",")

这就是我使用正则表达式所尝试的。这找不到任何表情符号。我也尝试过在表情符号数据的统一字段之前添加\u,但没有帮助

您可以使用以下正则表达式查找表情符号(以及Unicode语言平面之外的其他字符):

[^\u0000-\uFFFF]

例如,我们使用以下代码从字符串中过滤出表情符号:

“某些字符串”.replaceAll([^\u0000-\uFFFF],”)


希望这能有所帮助。

您的代码即将运行。要从
文本中提取表情符号,请尝试:

"""\p{block=Emoticons}""".r.findAllIn(text).mkString
例如:


scala>val text=“使用正则表达式,现在有两个问题”我已经尝试将正则表达式与表情符号数据“统一”字段一起使用-显示您尝试过的代码。该regexp过滤掉所有非拉丁字母的符号,而不仅仅是表情符号。举个例子,用西里尔语试试。不幸的是,它在复杂的表情上失败了。e@ValeryRyaboshapko向正则表达式添加了一些额外的块:
“[\p{block=Emoticons}\p{block=杂项符号和象形文字}\p{block=Supplemental Symbols and Pictographs}]”(“@darrenmc我收到一个错误,说程序无法识别补充符号和象形文字。我需要导入任何库才能将它们添加到我的正则表达式中吗?@tharindu您不需要任何其他导入,因为这是内置在Java标准库中的。要支持“补充符号和象形文字”,您需要启用Java 10或更高版本。