一种字符串转拼音方法与流程

文档序号:20439193发布日期:2020-04-17 22:17阅读:639来源:国知局
一种字符串转拼音方法与流程

【技术领域】

本发明涉及移动互联网技术领域,具体涉及一种字符串转拼音方法。



背景技术:

现有技术中,移动端字符串转拼音采用移动端原生系统进行。当前的移动设备(手机和平板电脑)主要有两类系统:安卓系统和ios系统。不同系统上的软件需要使用各自独特的编程语言开发,彼此之间无法直接移植使用。ios系统上的软件需要使用objective-c或者swift语言进行开发,安卓系统上的软件则需要使用java或者kotlin编程语言进行开发。为了满足使用不同系统的用户的拼音转化需求,当前开发人员需要在不同操作系统上开发多个版本的拼音转化软件。如果需要新增功能,每个版本的软件都需要进行代码更新和软件发布。除了借助于原生系统提供的转化,虽然还可以依赖于开源库,但是,目前开源库存在多种语言版本,并且多适用于服务端,多偏向于日常工作常用语的转化,对于移动端以及垂直行业的支持薄弱。

因此,这就产生了如下问题:第一,原生系统对于多音字,转化出来的是该多音字的默认音,而非准确的读音;第二,多音字的默认音在不同的系统中可能会不一致,导致转化结果不准确;第三,开发人员无法介入转化过程,无法进行纠正以及改进操作;第四,开源库依赖的多音词库并不适用于垂直行业;第五,开源库更适用于服务端,对移动端的性能内存等有较高要求。



技术实现要素:

为解决前述问题,本发明提供了一种移动端字符串转拼音方法,提升了多音字拼音转化的正确率,并且解决了开发人员开发和维护成本大、更新不及时的情况。

为了达到上述目的,本发明采用如下技术方案:

一种字符串转拼音方法,所述字符串转拼音方法应用于安卓系统或ios系统的app,包括如下步骤:

获取javascript字符串转拼音脚本、多音词词语表以及待转化字符串,解析并执行javascript字符串转拼音脚本,根据多音词词语表将待转化字符串转化为对应的拼音。

可选的,app包含原javascript字符串转拼音脚本,原javascript字符串转拼音脚本具有第一版本号,获取的javascript字符串转拼音脚本具有第二版本号,解析并执行javascript字符串转拼音脚本之前,判断第一版本号和第二版本号的新旧,若第一版本号比第二版本号新,则执行原javascript字符串转拼音脚本,若第二版本号比第一版本号新,则执行获取的javascript字符串转拼音脚本。

可选的,获取javascript字符串转拼音脚本通过网络获取。

可选的,多音词词语表通过网络获取。

可选的,根据多音词词语表将待转化字符串转化为对应的拼音时,采用贪婪模式进行拼音的匹配。

可选的,根据多音词词语表将待转化字符串转化为对应的拼音时,将转化失败的待转化字符串标记失败下标。

可选的,标记失败下标的待转化字符串由移动终端自带的操作系统进行转化。

本发明具有如下有益效果:

javascript是一种脚本语言,可以在安卓系统和ios系统上执行,是一种跨平台的编程语言。本发明所提供的方法,采用javascript字符串转拼音脚本提供给不同移动端系统的app调用。将对应的多音字转成对应的拼音发送给原生系统。借助于javascript脚本语言动态更新的特性,可通过网络下载新的脚本实现软件更新,而这一特性是其它编程语言诸如java、kotlin、objective-c、swift不能实现的。

因此,由于统一采用javascript字符串转拼音脚本,并且根据多音词词语表、采用贪婪模式进行匹配,保证了转化出来的拼音的准确性和一致性。多个系统上的字符串转拼音程序可以使用同一份代码、降低了研发和维护的成本,并可以保证转化结果的统一且支持实时程序更新。

本发明的这些特点和优点将会在下面的具体实施方式以及附图中进行详细的揭露。本发明最佳的实施方式或手段将结合附图来详尽表现,但并非是对本发明技术方案的限制。另外,在每个下文和附图中出现的这些特征、要素和组件是具有多个,并且为了表示方便而标记了不同的符号或数字,但均表示相同或相似构造或功能的部件。

【附图说明】

下面结合附图对本发明作进一步说明:

图1为本发明实施例的流程图。

【具体实施方式】

下面结合本发明实施例的附图对本发明实施例的技术方案进行解释和说明,但下述实施例仅为本发明的优选实施例,并非全部。基于实施方式中的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得其他实施例,都属于本发明的保护范围。

在本说明书中引用的“一个实施例”或“实例”或“例子”意指结合实施例本身描述的特定特征、结构或特性可被包括在本专利公开的至少一个实施例中。短语“在一个实施例中”在说明书中的各位置的出现不必都是指同一个实施例。

实施例:

如图1所示,本实施例提供一种字符串转拼音方法,字符串转拼音方法应用于安卓系统或ios系统的app,包括如下步骤:

获取javascript字符串转拼音脚本、多音词词语表以及待转化字符串。javascript字符串转拼音脚本以及多音词词语表通过网络获取。app包含有默认的多音词词语表,同时,通过网络所获取的多音词词语表,不是一个全量通用的多音词词语表,而是借助于大数据收集到的当前各垂直行业最新的常用词语,进行提取处理生成垂直行业专有的多音词词库。基于垂直行业的行业特性并汲取该行业的信息所整理出的精确词库,可大幅降低多音词库的数据量,避免提供过多无用垃圾数据导致的转化效率低,以及性能、内存的损耗,从而提高准确率以及性能。

待转化字符串由移动终端的原生系统转化用户的输入后发送至app。

app包含原javascript字符串转拼音脚本,原javascript字符串转拼音脚本具有第一版本号,获取javascript字符串转拼音脚本通过网络,所获取的javascript字符串转拼音脚本具有第二版本号,解析并执行javascript字符串转拼音脚本之前,判断第一版本号和第二版本号的新旧,若第一版本号比第二版本号新,则执行原javascript字符串转拼音脚本,若第二版本号比第一版本号新,则执行获取的javascript字符串转拼音脚本。

javascript是一种脚本语言,可以在安卓系统和ios系统上执行,是一种跨平台的编程语言。采用javascript字符串转拼音脚本提供给不同移动端系统的app调用,将对应的多音字转成对应的拼音发送给原生系统。借助于javascript脚本语言动态更新的特性,可通过网络下载新的脚本实现软件更新,而这一特性是其它编程语言诸如java、kotlin、objective-c、swift不能实现的。

解析并执行经过判断比较后确认执行的javascript字符串转拼音脚本,移动终端的原生系统将待转化字符串传输到javascript字符串转拼音脚本,根据多音词词语表,由javascript字符串转拼音脚本判断待转化字符串合法之后开始执行转化流程,将待转化字符串转化为对应的拼音,而非直接传输到移动终端的原生系统完成待转化字符串到拼音的转化。

在进行转化时,采用贪婪模式进行拼音的匹配,以避免分词不当导致的拼音转化错误。例如,多音词“银行人”在多音词词语表中存在对应词“银行”、“行人”、“银行人”,元素“行”的读音分别为“hang”、“xing”、“hang”,依靠贪婪模式,优先匹配“银行人”,进而找到最优解。

与此同时,转化失败或非多音字的待转化字符串则会被标记失败下标,标记失败下标的待转化字符串由移动终端的自带操作系统进行转化,完成最终的转化结果。

由于统一采用javascript字符串转拼音脚本,并且根据多音词词语表、采用贪婪模式进行匹配,保证了转化出来的拼音的准确性和一致性。多个系统上的字符串转拼音程序可以使用同一份代码、降低了研发和维护的成本,并可以保证转化结果的统一且支持实时程序更新。

以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,熟悉该本领域的技术人员应该明白本发明包括但不限于附图和上面具体实施方式中描述的内容。任何不偏离本发明的功能和结构原理的修改都将包括在权利要求书的范围中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1