利用Python将文本中的中英文分离方法

yipeiwu_com6年前Python基础

在进行文本分析、提取关键词时,新闻评论等文本通常是中英文及其他语言的混杂,若不加处理直接分析,结果往往差强人意。

下面对中英文文本进行分离做一下总结:

1、超短文本,ASCII识别。

s = "China's Legend Holdings will split its several business arms to go public on stock markets, the group's president Zhu Linan said on Tuesday.该集团总裁朱利安周二表示,中国联想控股将分拆其多个业务部门在股市上市。"
result = "".join(i for i in s if ord(i) < 256)
print(result)
out:
China's Legend Holdings will split its several business arms to go public on stock markets, the group's president Zhu Linan said on Tuesday.

2、unicode编码识别

import re
s = "China's Legend Holdings will split its several business arms to go public on stock markets, the group's president Zhu Linan said on Tuesday.该集团总裁朱利安周二表示,中国联想控股将分拆其多个业务部门在股市上市。"
uncn = re.compile(r'[\u0061-\u007a,\u0020]')
en = "".join(uncn.findall(s.lower()))
print(en)
out:
chinas legend holdings will split its several business arms to go public on stock markets, the groups president zhu linan said on tuesday

中文的编码范围是:\u4e00-\u9fa5,相应的[^\u4e00-\u9fa5]可匹配非中文。

匹配英文时,需要将空格[\u0020]加入,不然单词之间没空格了。

以上这篇利用Python将文本中的中英文分离方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python钉钉机器人运维脚本监控实例

python钉钉机器人运维脚本监控实例

如下所示: #!/usr/bin/python3 # -*- coding:UTF-8-*- # Author: zhuhongqiang from urllib impor...

Python做文本按行去重的实现方法

文本: 每行在promotion后面包含一些数字,如果这些数字是相同的,则认为是相同的行,对于相同的行,只保留一行。 思路: 根据字典和字符串切割。 建立一个空字典。 读入文本,并对每行...

微信 用脚本查看是否被微信好友删除

微信 用脚本查看是否被微信好友删除

某日,一同学给小的发了 Github 源码,说是可以轻松查到删除自己的微信好友,于是就开始了作死之路。 Github 源码请看:0x5e/wechat-deleted-friends...

pytorch::Dataloader中的迭代器和生成器应用详解

在使用pytorch训练模型,经常需要加载大量图片数据,因此pytorch提供了好用的数据加载工具Dataloader。 为了实现小批量循环读取大型数据集,在Dataloader类具体实...

python版opencv摄像头人脸实时检测方法

OpenCV版本3.3.0,注意模型文件的路径要改成自己所安装的opencv的模型文件的路径,路径不对就会报错,一般在opencv-3.3.0/data/haarcascades 路径下...