首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何过滤中文(仅中文)

如何过滤中文(仅中文)
EN

Stack Overflow用户
提问于 2011-08-02 18:02:07
回答 2查看 2.8K关注 0票数 7

我想把一些包含一些标点符号和全角符号的文本转换成纯中文文本。

代码语言:javascript
复制
maybe_re = re.compile("xxxxxxxxxxxxxxxxx") #TODO
print "".join(maybe_re.findall("你好,这只是一些中文文本..,.,全角"))

# I want out
你好这只是一些中文文本全角
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-02 19:40:15

我不知道有什么好方法来区分汉字和其他字母,但你可以把字母和其他字符区分开来。通过使用正则表达式,您可以使用r"\w" (如果使用Python2,则使用re.UNICODE标志进行编译)。

unicodedata.category(c)会告诉你c是什么类型的字符。您的中文字母是"Lo“(字母不区分大小写),而标点符号是"Po”。

票数 4
EN

Stack Overflow用户

发布于 2013-05-29 23:04:11

Zhon库为您提供了一个中文标点符号列表:https://pypi.python.org/pypi/zhon

代码语言:javascript
复制
str = re.sub('[%s]' % zhon.unicode.PUNCTUATION, "", "你好,这只是一些中文文本..,.,全角")

这几乎就是您想要的结果。不完全是,因为您提供的句子包含一些非常不标准的标点符号,例如“.”。无论如何,我认为Zhon可能会对其他有类似问题的人有用。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6910312

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档