2

我想拆分一个句子以将单词转换为标签(以在其中进行简单的全文搜索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(",", " ")但只替换一个字符,那么如何使用正则表达式替换?sssomething之类re.remove(pattern, phrase)的,是否有循环,这对服务器来说是一项繁重的工作吗?

4

2 回答 2

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']
于 2012-09-15T16:27:03.827 回答
2

如果您拆分非单词字符\W,则应该只留下一组单词。

于 2012-09-15T16:26:21.510 回答