数字字符串的转换方法、系统、计算机设备及介质技术方案

技术编号:21851012 阅读:30 留言:0更新日期:2019-08-14 00:25
本发明专利技术提供了一种数字字符串的转换方法、系统、计算机设备及介质。其中,一种数字字符串的转换方法,包括:构建哈希映射表;接收数字字符串,确定数字字符串的类型;获取目标类型,判断类型与目标类型是否一致;若不一致,根据哈希映射表,将数字字符串的类型转换为目标类型。通过本发明专利技术的技术方案,实现了不同类型的数字字符串之间的相互转换,无需手动修改,从而提高了编撰审校的效率,减少人为转换的失误。

Digital String Conversion Method, System, Computer Equipment and Media

【技术实现步骤摘要】
数字字符串的转换方法、系统、计算机设备及介质
本专利技术涉及计算机
,具体而言,涉及一种数字字符串的转换方法,一种数字字符串的转换系统,一种计算机设备,一种计算机可读存储介质。
技术介绍
目前在数字出版行业中,尤其是工具书的编撰过程中,往往由于编辑对国际标准单位的使用不敏感,往往会出现地方单位,如:斤,寸等单位,系统通过正则表达式往往很容易检测出非国际标准单位及其量词,但是在检测出结果后往往很难给出合理的转换建议,如:两斤理应转换为一公斤,那么这个建议的计算过程却不好处理,而如果解决了汉字数字转阿拉伯数字,阿拉伯数字转汉字这么两个过程,这个问题就会迎刃而解,会给编辑在编写过程中带来很大的便利,大大提高编辑效率。同样,在财经类的图书编撰过程中,也有此类似的问题,经常会遇到阿拉伯数字转化为财务数字的问题,目前都是人工转化或校对,这会给编辑人员带来很大麻烦,因此,汉字数字与阿拉伯数字的互相转换就变得尤为重要。目前,对于工具书编撰及财经类的图书的编撰,往往都是编辑核查后手动修改,往往审校过程很长,修改很繁琐,而实现汉字数字与阿拉伯数字的互相转换之后,这件事情就变得很简单,不仅能够提高编撰审校的效率,还能减少人为转换的失误。
技术实现思路
本专利技术旨在至少解决现有技术或相关技术中存在的技术问题之一。为此,本专利技术的一方面在于提出了一种数字字符串的转换方法。本专利技术的另一方面在于提出了一种数字字符串的转换系统。本专利技术的再一方面在于提出了一种计算机设备。本专利技术的又一方面在于提出了一种计算机可读存储介质。有鉴于此,本专利技术提出了一种数字字符串的转换方法,包括:构建哈希映射表;接收数字字符串,确定数字字符串的类型;获取目标类型,判断类型与目标类型是否一致;若不一致,根据哈希映射表,将数字字符串的类型转换为目标类型。根据本专利技术的数字字符串的转换方法,通过接收数字字符串,并判断该字符串的所属类型,将所属类型与目标类型进行比较,当所属类型与目标类型不一致时,对该字符串进行转换,得到目标类型的字符串。通过本专利技术的技术方案,实现了不同类型的数字字符串之间的相互转换,无需手动修改,从而提高了编撰审校的效率,减少人为转换的失误。另外,根据本专利技术上述的数字字符串的转换方法,还可以具有如下附加的技术特征:在上述技术方案中,优选地,数字字符串包括:汉语字符串、阿拉伯字符串、财务字符串。在该技术方案中,数字字符串包括如汉语字符串、阿拉伯字符串、财务字符串等,在对数字字符串的转换过程中包括汉语字符串与阿拉伯字符串的相互转换。其中当接收到的数字字符串为阿拉伯字符串,目标类型为财务字符串时,需要将阿拉伯字符串转换为汉语字符串之后,再转换为财务字符串;同样的,当接收到的数字字符串为财务字符串,目标类型为阿拉伯字符串时,需要先将财务数字全部格式化为普通中文数字。通过本专利技术的技术方案,解决了目前数字出版行业,尤其是图书编辑过程中,无法自动完成汉字数字与阿拉伯数字的互相转换的问题。在上述任一技术方案中,优选地,构建哈希映射表的步骤,包括:采用第一映射表存放汉语数字与阿拉伯数字的键值对;采用第二映射表存放财务数字对应的汉语数字;采用第三映射表存放各级单位量词对应的阿拉伯数值。在该技术方案中,在互相转换过程中,构建了三个静态哈希映射表HashMap,分别为第一映射表numMap,第二映射表simpleNumToComplexMap,第三映射表unitMap,用以解决单个字符遍历取值。其中numMap存放的是中文数字与阿拉伯数字的键值对key-value,其中key是中文数字,value是阿拉伯数字,例如:“numMap.put("零",0);numMap.put("一",1);”,依次存放零到九对应的数字为0至9;simpleNumToComplexMap存放的是财务数字对应的普通汉语数字,例如:“simpleNumToComplexMap.put("壹","一");simpleNumToComplexMap.put("贰","二");”,依次存放财务中能出现的全部数字及其对应的关系;unitMap存放的是各级单位对应的数字,例如:“unitMap.put("亿",100000000L);unitMap.put("兆",1000000000000L);”,其中兆代表的是万亿,该算法中支持最大的转换级别为万亿级别。通过本专利技术的技术方案,解决了实际过程中标准单位校验的问题,为工具书编撰过程中的量和单位的标准性校验提供可靠依据,同样,在编撰财务方面的图书时,能够根据提供的数字进行互相转换,即能解决汉语数字运算,也能支持阿拉伯数字在财务习惯上的书写规范,为此类书目的编撰提供便利。在上述任一技术方案中,优选地,将数字字符串的类型转换为目标类型的步骤,包括将汉语字符串转换为阿拉伯字符串:将汉语字符串分割为整数位Z1和小数位Z2;根据各级单位量词分割整数位Z1,得到各级单位段;计算各级单位段的值,再相加得到整数位Z1对应的阿拉伯字符串z1;遍历小数位Z2中的每个字符,从第一映射表中取出每个字符对应的阿拉伯数字,并按顺序拼接成字符串z2;则转换后的阿拉伯字符串为:z1.z2。在该技术方案中,传入中文数字后,用“点”切割得到整数位字符串Z1和小数位字符串Z2,小数位字符串Z2中将遍历每个字符,从第一映射表中依次取出每个字符所对应的阿拉伯数字,按顺序拼接成新字符串z2,即小数部分;采用各级单位量词将整数位字符串Z1分割为各级单位段,各级单位量词包括如万、亿、兆等,其中,兆为万亿的替换词,因此在切割之前需要从整数位中将万亿替换为兆;而后用各级单位量词切割整数位字符串Z1,得到各个单位段的中文数字,计算各个单位段的值,将各单位段的值相加在一起即得到整数位Z1对应的阿拉伯数字z1,那么最后转为的阿拉伯数字字符串为(z1+"."+z2),将该字符串强转为数字,即为“z1.z2”。在上述任一技术方案中,优选地,计算各级单位段的值的步骤,包括:依次从各级单位段中取出单位量词前的汉语数字,从第一映射表中取出汉语数字对应的阿拉伯数字,再从第三映射表中取出单位量词对应的阿拉伯数值,分别相乘得到各级单位段的数值。在该技术方案中,以具体实施例进行说明,从Z1中将万亿替换为“兆”后得到中文数字Y1兆Y2亿Y3万Y4,而后用“兆”、“亿”、“万”分别切割Y1兆Y2亿Y3万Y4,得到各个单位段的中文数字Y1,Y2,Y3,Y4,依次对Y1,Y2,Y3,Y4取出量词“十”、“百”、“千”前的数字,利用第一映射表取出对应阿拉伯数字,然后利用第三映射表取出“十”、“百”、“千”对应的各级阿拉伯数字,分别相乘得到Y1Y2Y3Y4各量词级别的对应的数值M1M2M3M4,那么Z1转换后的阿拉伯数字z1=M1*兆对应的数值+M2*亿对应的数值+M3*万对应的数值+M4,那么最后转为的阿拉伯数字字符串为(z1+"."+z2),将该字符串强转为数字,即为“z1.z2”。在上述任一技术方案中,优选地,将数字字符串的类型转换为目标类型的步骤,还包括将阿拉伯字符串转换为汉语字符串:将阿拉伯字符串分割为整数位和小数位;对整数位按照每四位数字从左往右进行切割,得到各级单位的值;遍历各级单位的值中的数字位,从第一映射表中分别取出每个本文档来自技高网...

【技术保护点】
1.一种数字字符串的转换方法,其特征在于,包括:构建哈希映射表;接收数字字符串,确定所述数字字符串的类型;获取目标类型,判断所述类型与所述目标类型是否一致;若不一致,根据所述哈希映射表,将所述数字字符串的类型转换为目标类型。

【技术特征摘要】
1.一种数字字符串的转换方法,其特征在于,包括:构建哈希映射表;接收数字字符串,确定所述数字字符串的类型;获取目标类型,判断所述类型与所述目标类型是否一致;若不一致,根据所述哈希映射表,将所述数字字符串的类型转换为目标类型。2.根据权利要求1所述的数字字符串的转换方法,其特征在于,所述数字字符串包括:汉语字符串、阿拉伯字符串、财务字符串。3.根据权利要求2所述的数字字符串的转换方法,其特征在于,所述构建哈希映射表的步骤,包括:采用第一映射表存放汉语数字与阿拉伯数字的键值对;采用第二映射表存放财务数字对应的汉语数字;采用第三映射表存放各级单位量词对应的阿拉伯数值。4.根据权利要求1至3中任一项所述的数字字符串的转换方法,其特征在于,将所述数字字符串的类型转换为所述目标类型的步骤,包括:将所述汉语字符串转换为所述阿拉伯字符串:将所述汉语字符串分割为整数位Z1和小数位Z2;根据各级单位量词分割所述整数位Z1,得到各级单位段;计算所述各级单位段的值,再相加得到所述整数位Z1对应的阿拉伯字符串z1;遍历所述小数位Z2中的每个字符,从所述第一映射表中取出所述每个字符对应的阿拉伯数字,并按顺序拼接成字符串z2;则转换后的阿拉伯字符串为:z1.z2。5.根据权利要求4所述的数字字符串的转换方法,其特征在于,计算所述各级单位段的值的步骤,包括:依次从所述各级单位段中取出所述单位量词前的汉语数字,从所述第一映射表中取出所述汉语数字对应的阿拉伯数字,再从所述第三映射表中取出所述单位量词对应的阿拉伯数值,分别相乘得到所述各级单位段的数值。6.根据权利要求4所述的数字字符串的转换方法,其特征在于,将所述数字字符串的类型转换为所述目标类型的步骤,还包括:将所述阿拉伯字符串转换为所述汉语字符串:将所述阿拉伯字符串分割为整数位和小数位;对所述整数位按照每四位数字从左往右进行切割,得到各级单位的值;遍历所述各级单位的值中的数字位,从所述第一映射表中分别取出每个数字位对应的汉语数字,再从十位开始依次追加所述单位量词;将追加所述单位量词后的字符串拼上所述各级单位对应的汉字,得到所述各级单位的值对应的汉语字符串;将所述各级单位的值对应的汉语字符串拼接在一起,即得到转化后的汉语字符串。7.根据权利要求6所述的数字字符串的转换方法,其特征在于,所述转换方法还包括:判断所述转换后的汉语字符串是否以一十开头,若是,则将所述一十替换为十;判断所述转换后的汉语字符串是否以零结尾,若是,则将所述零替换为空字符;判断所述转换后的汉语字符串中是否包含连续多个零,若是,则将连续的多个零替换为一个零。8.根据权利要求7所述的数字字符串的转换方法,其特征在于,所述转换方法还包括:根据所述第二映射表将所述财务字符串与所述汉语字符串进行相互转换。9.一种数字字符串的转换系统,其特征在于,包括:构建单元,用于构建哈希映射表;接收单元,用于接收数字字符串,确定所述数字字符串的类型;判断单元,用于获取目...

【专利技术属性】
技术研发人员:戴淼
申请(专利权)人:北大方正集团有限公司北京北大方正电子有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1