一种在两个unicode字符之间添加空格的方法

时间:2019-01-17 16:36:49

标签: r regex stringr

我正在使用R进行推文分析,并希望在分析中包含表情符号。我已经阅读了有用的资源,并查阅了Jessica Peterka Bonetta和Kate Lyons的表情符号词典。但是,当推文中的表情符号彼此相邻时,我遇到了问题。

例如,如果使用带有多个表情符号的Tweet,我将获得所需的结果:

x <- iconv(x, from = "UTF8", to = "ASCII", sub = "byte")
x

x将返回:

  

“嗯,我们的飞机<9c> <88> <8f>延迟了<9a> <8f>,而我<80> <99>有点紧张<9f> <98> <96>,但是我<80> < 99> m在我的路上<9c> <85>回家<9f> <8f>,这样<80> <99>真的很令人兴奋<80> <8f> t <80>

与Kate Lyons的表情符号字典匹配时:

FindReplace(data = x, Var = "x", replaceData = emoticons, from="R_Encoding", to = "Name", exact = FALSE)

收益率:

  

嗯,我们的飞机飞机延误了WARNINGSIGN,我<80> <99>我有点紧张<9f> <98> <96>,但是我<80> <99> m在途中WHITEHEAVYCHECKMARK回家了<9f> <8f>这样<80> <99>确实令人兴奋的DOUBLEEXCLAMATIONMARK t <80>

如果有一条连续两个表情符号的推文,例如:

  

“ Delayed \ U0001f615 \ U0001f615 \ n。\ n。\ n。\ n \ n#flying #flight #travel #delayed #baltimore #january #flightdelay #travelproblems#bummer…”

从上面用iconv重复该过程将不起作用,因为它与emoji词典中的编码不匹配。因此,我想到了在两个模式(\ U0001f615 \ U0001f615)之间添加一个空格 (\ U0001f615 \ U0001f615),但是我为此苦苦寻找正确的正则表达式。

0 个答案:

没有答案