python - 如何拆分句子,只让 ascii 字符

标签 python regex mongodb search

我想拆分一个句子将单词转换成标签(在 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 like re.remove(pattern, phrase),有没有循环,这对服务器来说是不是很繁重的工作?

最佳答案

非正则表达式解决方案: 使用 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']

关于python - 如何拆分句子,只让 ascii 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12439076/

相关文章:

python - 使用 pip 从存储库安装软件包时,(s)witch、(i)gnore、(w)ipe、(b)ackup 选项是什么意思?

python - 按列数据类型对 pd.describe 的输出进行排序

Python 遍历文件系统。奇怪的问题

regex - Apache 重定向正则表达式 : match something that is not following something

Python:使用 re.match 检查字符串

python - Google Bigquery 某些内容返回空/无行

c# - 修剪 url 字符串。 C#

java - Elasticsearch 和 mongodb,部分搜索不起作用

mongodb - 根据 Go 子文档中的字段对 mongodb 查询进行排序

javascript - mongoose - 如何从 $pull 中删除元素