我正在从Twitter获取推文,我想做一个术语频率,但避免使用表情符号和奇怪的字符。我已经看到这些角色有以下形式:u' *'所以他们总是从\开始,但是当我尝试将这个角色作为过滤器时,它不允许我因为\是一个特殊的角色。你知道我怎么能过滤这种话? 我附上了我最常用的10个单词:
[(u'#ElClasico', 3311),
(u'RT', 2839),
(u'\ud83d', 1425),
(u'#Messi', 1369),
(u'\u2026', 1092),
(u'Messi', 975),
(u'Barcelona', 964),
(u'\u2705', 948),
(u'Most', 944),
(u'500', 903)]
我想要删除你的,' \ 2039'和你' \#39;
答案 0 :(得分:0)
如果您想过滤掉非拉丁字符,那么您可以使用库regex
:
from regex import VERSION1, UNICODE, compile
# remove non-Latin characters.
compile(ur'\p{^Latin}+', VERSION1 | UNICODE).sub('', YOUR_INPUT)
# remove non-Latin/non-space/non-punctuation characters.
compile(ur'[^\p{Latin}\p{Zs}\p{Po}]+', VERSION1 | UNICODE).sub('', YOUR_INPUT)
C.f: