我正在制作一个涉及表情符号中的表情符号的NLP项目。
这里给出了推文的一个例子:
"sometimes i wish i wa an octopus so i could slap 8 people at once"
我的问题是once
被认为是一个单词,所以我想将这个独特的单词分成两个,这样我的推文就像这样:
"sometimes i wish i wa an octopus so i could slap 8 people at once "
请注意,我已经有包含每个emojis的已编译的regexp!
我正在寻找一种有效的方法,因为我有数十万条推文,但我无法弄清楚从哪里开始。
谢谢
答案 0 :(得分:2)
你不能做这样的事情:
>>> import re
>>> s = "sometimes i wish i wa an octopus so i could slap 8 people at once"
>>> re.findall("(\w+|[^\w ]+)",s)
['sometimes', 'i', 'wish', 'i', 'wa', 'an', 'octopus', 'so', 'i', 'could', 'slap', '8', 'people', 'at', 'once', '']
如果您再次需要它们作为单个空格分隔的字符串,只需加入它们:
>>> " ".join(re.findall("(\w+|[^\w ]+)",s))
'sometimes i wish i wa an octopus so i could slap 8 people at once '
编辑:修复。
答案 1 :(得分:1)
您可以使用int
来引入空格:
str.Length - 3
示例:强>
re.sub