python分割字符串中文_python 分割中文英文混合字符串的正确方法
python 里的字符编码不统一导致中英文的处理有不同的结果,下面介绍中文英文混合字符串 split 的方法。
分割词
#!/usr/bin/env python
# -*- coding: utf-8 -*-
s = '我爱北京天安门python'
s2 = ''
if not isinstance(s, unicode):
s2 = s.decode("utf-8")
slist = []
keys = []
for i in s2:
print i
slist.append(i)
key = '%X' % ord(i)
keys.append(key)
print len(slist)
print slist
print len(keys)
print keys
# =====================
s = u'我爱北京天安门python'
slist = []
keys = []
for i in s:
if not isinstance(i, unicode):
i = i.decode("utf-8")
print i
slist.append(i)
key = '%X' % ord(i)
keys.append(key)
print len(slist)
print slist
print len(keys)
print keys
用正则
import re
s = 'hi新手oh'.decode('utf-8') #举个栗子是字符串s,为了匹配下文的unicode形式,所以需要解码
p = re.compile(ur'[\u4e00-\u9fa5]') #这里是精髓,[\u4e00-\u9fa5]是匹配所有中文的正则,因为是unicode形式,所以也要转为ur
print p.split(s) #使用re库的split切割
稍复杂的分切
中文按字断开,英文按单词分开,数字按空格等特殊符号断开
import re
def get_word_list(s1):
# 把句子按字分开,中文按字分,英文按单词,数字按空格
regEx = re.compile('[\\W]*') # 我们可以使用正则表达式来切分句子,切分的规则是除单词,数字外的任意字符串
res = re.compile(r"([\u4e00-\u9fa5])") # [\u4e00-\u9fa5]中文范围
p1 = regEx.split(s1.lower())
str1_list = []
for str in p1:
if res.split(str) == None:
str1_list.append(str)
else:
ret = res.split(str)
for ch in ret:
str1_list.append(ch)
list_word1 = [w for w in str1_list if len(w.strip()) > 0] # 去掉为空的字符
return list_word1
python分割字符串中文_python 分割中文英文混合字符串的正确方法相关推荐
- c++截取汉字和英文混合字符串
c++截取汉字和英文混合字符串 在C++里截取字符串可以使用string.substr(),可是这个函数只能按英文来截取, 如果是汉字可能就要计算好字符个数,如果是汉字和英文混合,那就只能望洋兴叹了. ...
- python 字符串分割和拼接_python分割和拼接字符串
关于string的split 和 join 方法 对导入os模块进行os.path.splie()/os.path.join() 貌似是处理机制不一样,但是功能上一样. 1.string.split( ...
- 为什么python注释不能中文_python注释中文
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 4.python代码注释最后更新于:2019-10-05 14:25:41在 p ...
- python输出汉字怎么注释中文_Python使用中文注释和输出中文(原创)
标签: 刚开始学习python,需要在Python中注释中文和输出中文,现在开始尝试: 仅为初步学习参考,高手请绕行. ---------------------------------------- ...
- python读取配置文件 分段_python分割文件的常用方法
本文大家整理了一些比较好用的关于python分割文件的方法,方法非常的简单实用.分享给大家供大家参考.具体如下: 例子1 指定分割文件大小 配置文件 config.ini: 复制代码 代码如下: [g ...
- python rfind函数用法_Python语法速查:字符串格式简单处理、子串查找与判断方法?...
这是一篇python基础知识分享型文章,对学习python感兴趣的朋友们可以仔细看看 字符串常用方法 Python3中,字符串全都用Unicode形式,所以省去了很多以前各种转换与声明的麻烦.字符串属 ...
- python练习题百度云_Python专项基础练习(字符串)练习题
1. 字符串练习题 1.1.字符串内置方法练习 在交互式解释器中完成下列题目将字符串 "abcd" 转成大写 计算字符串 "cd" 在 字符串 "ab ...
- ubuntu 装机技巧 双系统引导修复boot-repair 换源 github安装 截图 文件夹中文名称改为英文 deb包的安装方法 更改时间
ubuntu 装机技巧 文章目录 ubuntu 装机技巧 一.换源 +github上网 换源 github 上网 二.ubuntu win双系统引导修复boot-repair 三.ubuntu将主文件 ...
- python距离向量路由算法_python算法练习——动态规划与字符串的编辑距离
动态规划与字符串的编辑距离 动态规划 动态规划(dynamic programming)是解决多阶段决策问题常用的最优化理论,该理论由美国数学家Bellman等人在1957年提出,用于研究多阶段决策过 ...
最新文章
- day2 字符编码、列表、元组、字符串操作、字典
- 为什么使用RLC表测量电感在不同的频率测量值不同呢?
- ROS Gazebo(二):概述
- Markdown批量发布到Github
- springboot + rabbitmq 整合示例
- Altium Designer 21 最全快捷键 分享 共1000多个|电子设计效率提高全靠它
- 数据结构链表之单向链表:Python3 实现单向链表——1
- 华为交换机默认vlan都是通的吗_华为设备二层交换技术——Hybrid接口详解
- wordpress主题是php开发的吗,写给想学习wordpress主题开发的朋友们
- mysql mgr监控_说MGR - MGR的监控
- MySQL(MariaDB)的 SSL 加密复制
- VistaNet: Visual Aspect Attention Network for Multimodal Sentiment Analysis 论文笔记
- 记录一个找直线三等分点的方法及其证明
- 关于iphone5和iphone4兼容的尺寸问题
- Modern CMake 简介
- C语言atoi函数详解
- ClassLoader加载类时序图及Qzon修复流程图
- Kafka节点服役和退役
- 小鼠繁育流程、要点及注意事项
- 10个JS精简代码无形装逼集合,最为致命
热门文章
- python迭代器、生成器及装饰器
- esxi增加linux空间,ESXI4.1 linux虚拟机调整扩充磁盘大小
- netfilter/iptables详解
- 中国城市最新排名:一线、二线、三线
- oracle data recovery advisor,Oracle Data Recovery Advisor
- 面试者如何回应面试官问的「你有哪些要问我的?」
- 带计算机功能的私有云,不怕网盘关闭!老司机教你用PC搭建私人云网盘
- layui复选框怎么取值_layui如何获取checkbox复选框的值
- runtime 入门与简介
- 如何保证测试的完备性?