Python判断unicode是汉字,数字,英文,或者其他字符
2018-02-01 19:17
627 查看
功能:
判断unicode是否是汉字,数字,英文,或者是否是(汉字,数字和英文字符之外的)其他字符。
全角、半角符号相互转换。
全角、半角?
全角--指一个字符占用两个标准字符位置。
汉字字符和规定了全角的英文字符及国标GB2312-80中的图形符号和特殊字符都是全角字符。一般的系统命令是不用全角字符的,只是在作文字处理时才会使用全角字符。
半角--指一字符占用一个标准的字符位置。
通常的英文字母、数字键、符号键都是半角的,半角的显示内码都是一个字节。在系统内部,以上三种字符是作为基本代码处理的,所以用户输入命令和参数时一般都使用半角。
例如:一个英文字符“ABC”如果以全角输入,会被当成汉字处理,如果以半角输入,会被当成普通英文字母处理。
判断unicode是否是汉字,数字,英文,或者是否是(汉字,数字和英文字符之外的)其他字符。
全角、半角符号相互转换。
全角、半角?
全角--指一个字符占用两个标准字符位置。
汉字字符和规定了全角的英文字符及国标GB2312-80中的图形符号和特殊字符都是全角字符。一般的系统命令是不用全角字符的,只是在作文字处理时才会使用全角字符。
半角--指一字符占用一个标准的字符位置。
通常的英文字母、数字键、符号键都是半角的,半角的显示内码都是一个字节。在系统内部,以上三种字符是作为基本代码处理的,所以用户输入命令和参数时一般都使用半角。
例如:一个英文字符“ABC”如果以全角输入,会被当成汉字处理,如果以半角输入,会被当成普通英文字母处理。
# -*- coding: UTF-8 -*- """判断一个unicode是否是汉字""" def is_chinese(uchar): if uchar >= u'\u4e00' and uchar <= u'\u9fa5': return True else: return False """判断一个unicode是否是数字""" def is_number(uchar): if uchar >= u'\u0030' and uchar <= u'\u0039': return True else: return False """判断一个unicode是否是英文字母""" def is_alphabet(uchar): if (uchar >= u'\u0041' and uchar <= u'\u005a') or (uchar >= u'\u0061' and uchar <= u'\u007a'): return True else: return False """判断是否是(汉字,数字和英文字符之外的)其他字符""" def is_other(uchar): if not (is_chinese(uchar) or is_number(uchar) or is_alphabet(uchar)): return True else: return False """半角转全角""" def B2Q(uchar): inside_code = ord(uchar) if inside_code < 0x0020 or inside_code > 0x7e: # 不是半角字符就返回原来的字符 return uchar if inside_code == 0x0020: # 除了空格其他的全角半角的公式为:半角=全角-0xfee0 inside_code = 0x3000 else: inside_code += 0xfee0 return unichr(inside_code) """全角转半角""" def Q2B(uchar): inside_code = ord(uchar) if inside_code == 0x3000: inside_code = 0x0020 else: inside_code -= 0xfee0 if inside_code < 0x0020 or inside_code > 0x7e: # 转完之后不是半角字符返回原来的字符 return uchar return unichr(inside_code) """把字符串全角转半角""" def stringQ2B(ustring): return "".join([Q2B(uchar) for uchar in ustring]) """将UTF-8编码转换为Unicode编码""" def convert_toUnicode(string): ustring = string if not isinstance(string, unicode): ustring = string.decode('UTF-8') return ustring if __name__ == "__main__": ustring1 = u'收割季节 麦浪和月光 洗着快镰刀' string1 = 'Sky0天地Earth1*' ustring1 = convert_toUnicode(ustring1) string1 = convert_toUnicode(string1) for item in string1: # print is_chinese(item) # print is_number(item) # print is_alphabet(item) print is_other(item)
相关文章推荐
- python判断unicode是否是汉字,数字,英文,或者其他字符
- python判断unicode是否是汉字,数字,英文,或者其他字符
- python判断unicode是否是汉字,数字,英文,或者其他字符
- python判断unicode是否是汉字,数字,英文,或者其他字符
- python判断unicode是否是汉字,数字,英文,或者其他字符
- python判断unicode是否是汉字,数字,英文,或者其他字符
- python判断unicode是否是汉字,数字,英文,或者其他字符
- VC判断一个UNICODE字符串中字母、数字、汉字、其他字符的个数
- 有关正则表达式判断数字,字符,汉字,全角,半角,英文等
- 判断unicode是否是汉字、数字、英文
- java小练习:输入一个字符,判断该字符是数字?英文字母?还是其他字符
- JavaScript 中怎样判断文本框只能输出英文字母、汉字和数字,不能输入特殊字符!
- 输入一串字符,判断英文字母,空格,数字及其他字符的个数
- 如何判断一个字符串是否仅由数字or仅由数字英文字符or仅由汉字组成
- unicode下CString提取判断中文。英文字符。及数字
- 算法:输入一个字符串,判断里面的数字,英文字符,空格和其他字符的个数
- jquery判断字符长度 数字英文算1字符 汉字算2字符
- unicode汉字、数字、英文等字符范围表示
- python 判断unicode字符串是汉字/数字/字母,全角/半角转换
- iOS判断输入框的字符为8-15位纯数字或者英文