我想拆分一个句子将单词转换为标签(在Mongodb
中进行简单的全文搜索),我不想保存逗号或冒号:
phrase = "hello, this is a simple description!"
pattern = "[\"\'\!\?\:\,\;]"
我试过这个:
re.split(pattern, phrase)
Out[1]: ['hello', ' this is a simple description', ''] # as you can see, i've always blank characters.
我想删除所有“非字母字符”,有phrase.replace(",", " ")
但只替换一个字符,那么如何使用正则表达式替换? sssomelike re.remove(pattern, phrase)
,是否有一个循环,这对服务器来说是一项繁重的工作吗?
答案 0 :(得分:4)
non-regex
解决方案:
使用strip()
,但您需要将所有非字母字符传递给它。
类似于:strip(',!*&^%#$;:+')
In [12]: phrase = "hello, this is: a simple; description!!"
In [13]: [x.strip(',!*&^%#$;:+') for x in phrase.split()]
Out[13]: ['hello', 'this', 'is', 'a', 'simple', 'description']
答案 1 :(得分:2)
如果您拆分非单词字符\W
,那么应该只留下一系列单词。