unicode

作者: visado | 来源:发表于2018-08-08 11:38 被阅读0次

unicode 编码

如同它的名字一样,目的就是希望能够建立起业界统一字符集和编码的方案,以满足跨语言,跨平台的数据转换,处理需求。

90年开始研发,94年正式公布第一版,后续根据各国的标准不断增修。

unicode的中文编码

因为历史的原因,日文,韩文中存在汉字以及在原本汉字的基础上变化之后的文字,所以在unicode中被统一编码。CJK(Chinese,Japanse,Koren),以下是CJK的全部的编码方案:

CJK scripts and symbols:

可以看到整个汉字的编码范围是确定的,并且拆分了字(区分不同的地区),注音,偏旁部首,笔画,易经符号等各种中文字符。最后一次(2018年)增增修将CJK统一表意符号的范围是[U+9FA6,U+9FBB],互联网上流传的大量的判断汉字的范围只到9fa5还没有来得及更新。

CJK Unified Ideographs

CJK统一字符编码,一共包括初始版本和后面6次扩展的提交。每次提交都是将CJKV(vitenam)的标准进行融合,以下是初始版本的方案:


截图来自维基百科

初始版本一共包含20,976个汉字,他们是按照康熙字典的笔画进行排序的,而后续的6次扩展没有按照这个排序。所以汉字是混合编排的,简体-繁体转换貌似只能hard-code。

后面每次的增修主要会将各个国家的标准更新的内容更新到新的标准中去,主要是新增汉字。

判断是否是纯汉字语句

def is_chinese(text):
    for uchar in text:
        if uchar >= u'\u4E00'and uchar <=u'\u9FBB':
            continue
        else:
            return False
    return True

参考

Unicode-wiki

相关文章

网友评论

      本文标题:unicode

      本文链接:https://www.haomeiwen.com/subject/lsmtbftx.html