python中文处理

1.多字节问题必须要全部转成unicode再处理,否则就会有问题,比如中文gbk编码的"和珅",其中的珅的后半字节和|的一样的,所以在处理的时候会有问题,如下我们用re.split来分割:

#用正则分隔某个字符串
def split(str, patternlist):
	unicodestr = str.decode('gbk') 
	result = []
	for i in patternlist:
		unicodei = i.decode('gbk') 
		outlist = re.split(unicodei, unicodestr)
		for j in outlist :
			gbk = j.encode('gbk')
			if str != gbk :
				result.append(gbk)
	return result

 注意输入|时必须要输入\|,因为|本身是正则表达式的一个符号。

posted @ 2013-11-25 14:58  桂皮猪  阅读(230)  评论(0编辑  收藏  举报