【发布时间】:2019-08-26 05:43:50
【问题描述】:
我想在另一篇文章 (Reading in Unicode Emoji correctly into R) 中修改方法,以检查 unicode 字符串是否对应于表情符号……但我显然还没有完全掌握如何正确使用 stringi。
第一部分代码是链接帖子的简化,并按预期工作;替换第一个和最后一个条目:
a <- c("\U0001f600", "\U0001f603", "\U0001f604")
b <- c("grinning face", "grinning face with big eyes", "grinning face with smiling eyes" )
v <- data.frame(lemma = c("\U0001f600", "\U0001f3fb", "hello", "asdfasdlkasdfkd", "\U0001f604"), stringsAsFactors = FALSE)
v %>% mutate(is_emoji = stri_replace_all_regex(lemma,
pattern = a,
replacement = b,
vectorize_all=FALSE))
但我返回布尔值的尝试没有;除了警告消息“较长的对象长度不是较短对象长度的倍数”之外,我没有使用以下代码获得等于 TRUE 的最后一个值:
v %>% mutate(is_emoji = stri_detect_regex(lemma, pattern = a))
我尝试了无数其他变体,但都没有成功。
【问题讨论】: