CN115686444A - 一种变量名称翻译方法、装置、设备、存储介质 - Google Patents
一种变量名称翻译方法、装置、设备、存储介质 Download PDFInfo
- Publication number
- CN115686444A CN115686444A CN202211325885.3A CN202211325885A CN115686444A CN 115686444 A CN115686444 A CN 115686444A CN 202211325885 A CN202211325885 A CN 202211325885A CN 115686444 A CN115686444 A CN 115686444A
- Authority
- CN
- China
- Prior art keywords
- translation
- text
- translated
- result
- psi
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Machine Translation (AREA)
Abstract
本申请公开了一种变量名称翻译方法、装置、设备、存储介质,涉及计算机技术领域,包括:遍历Psi对象,以获取Psi属性的待翻译文本;判断待翻译文本的文本类别,以得到相应文本类别的判断结果;若判断结果为待翻译文本为中文,则基于预设翻译策略选择调用对应的翻译服务方式翻译待翻译文本,以获取相应的翻译结果;利用翻译结果替换待翻译文本,完成变量名称的翻译。可见,通过对待翻译文本进行自动的文本类别判断,得到文本类别的判断结果之后,通过调用翻译服务自动将中文类别的待翻译文本进行翻译,自动转换成满足用户需要的文本类别所对应的翻译结果,提高开发的效率,同时增提高代码的规范性和可读性。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种变量名称翻译方法、装置、设备、存储介质。
背景技术
对优秀代码的要求,除了要能完美地运行,还要求能让开发人员读懂,方便日后进行维护。优秀的代码能让代码阅读人员非常容易地懂得代码,一个好的变量名在可读性和可维护性上是极其重要的。好的变量名是易记、易读的。变量和变量名本质上是同一件事物,变量的好与坏在很大程度上取决于它的命名的好与坏。因此,在编码过程中好的变量名非常重要。对母语不是英语的开发者而言,在日常编程中最烦恼的就是给变量取名,目前,开发人员在编写代码时,当遇到不熟悉的单词时,主要依靠开发人员的经验、查询英文词典或翻译工具的方式获取变量的命名。即通过翻译工具,把中文字符串翻译成对应的英文字符串,然后用这些英文字符串作为变量命名,仅凭开发人员经验对变量进行命名的方式会产生代码不规范的问题,通过查询英文字典的方式或者翻译工具的方式来获取变量的英文命名,效率低下。
综上,如何实现变量规范准确的命名,提高开发的效率、代码的规范性和可读性是本领域有待解决的技术问题。
发明内容
有鉴于此,本发明的目的在于提供一种变量名称翻译方法、装置、设备、存储介质,能够实现变量规范准确的命名,提高开发的效率、代码的规范性和可读性。其具体方案如下:
第一方面,本申请公开了一种变量名称翻译方法,包括:
遍历Psi对象,以获取Psi属性的待翻译文本;
判断所述待翻译文本的文本类别,以得到相应文本类别的判断结果;
若所述判断结果为所述待翻译文本为中文,则基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果;
利用所述翻译结果替换所述待翻译文本,完成变量名称的翻译。
可选的,所述遍历Psi对象,以获取Psi属性的待翻译文本之前,还包括:
触发文本提取操作,对Java文件进行解析,以获取Psi树结构;
对所述Psi树结构进行处理,以获取Psi对象。
可选的,所述判断所述待翻译文本的文本类别,以得到相应文本类别的判断结果之后,还包括:
若所述判断结果为所述待翻译文本为英文,则将所述待翻译文本作为翻译结果进行输出。
可选的,所述基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果,包括:
通过用户交互界面输入速度优先翻译策略,从预设翻译速度排序列表中选择翻译速度最快的翻译服务翻译所述待翻译文本,以获取相应的翻译结果。
可选的,所述基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果,包括:
通过用户交互界面输入精度优先翻译策略,从预设翻译精度排序列表中按照从大到小的顺序选择预设数量个翻译服务翻译所述待翻译文本,以获取相应的翻译结果。
可选的,所述从预设翻译精度排序列表中按照从大到小的顺序选择预设数量个翻译服务翻译所述待翻译文本,以获取相应的翻译结果,包括:
统计预设数量个翻译服务的翻译结果,并从所有所述翻译结果中选择次数最多的翻译结果作为目标翻译结果。
可选的,所述获取相应的翻译结果之后,包括:
将所述翻译结果与目标待翻译文本关联性存储至翻译缓存中;
当下次出现所述目标待翻译文本的翻译请求时,返回所述翻译缓存中对应的翻译结果。
第二方面,本申请公开了一种变量名称翻译装置,包括:
文本获取模块,用于遍历Psi对象,以获取Psi属性的待翻译文本;
类别判断模块,用于判断所述待翻译文本的文本类别,以得到相应文本类别的判断结果;
文本翻译模块,用于若所述判断结果为所述待翻译文本为中文,则基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果;
文本替换模块,用于利用所述翻译结果替换所述待翻译文本,完成变量名称的翻译。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的变量名称翻译方法的步骤。
第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的变量名称翻译方法的步骤。
由此可见,本申请公开一种变量名称翻译方法,包括:遍历Psi对象,以获取Psi属性的待翻译文本;判断所述待翻译文本的文本类别,以得到相应文本类别的判断结果;若所述判断结果为所述待翻译文本为中文,则基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果;利用所述翻译结果替换所述待翻译文本,完成变量名称的翻译。可见,通过对待翻译文本进行自动的文本类别判断,得到文本类别的判断结果之后,通过调用翻译服务自动将中文类别的待翻译文本进行翻译,根据不同的策略调用不同翻译服务,保证翻译的精确性,提高生成的变量名称的准确性,自动转换成满足用户需要的文本类别所对应的翻译结果,提高开发的效率,同时增提高代码的规范性和可读性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种变量名称翻译方法流程图;
图2为本申请公开的一种变量名称英文翻译结果图;
图3为本申请公开的一种具体的变量名称翻译方法流程图;
图4为本申请公开的一种变量名称翻译装置结构示意图;
图5为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
对优秀代码的要求,除了要能完美地运行,还要求能让开发人员读懂,方便日后进行维护。优秀的代码能让代码阅读人员非常容易地懂得代码,一个好的变量名在可读性和可维护性上是极其重要的。好的变量名是易记、易读的。变量和变量名本质上是同一件事物,变量的好与坏在很大程度上取决于它的命名的好与坏。因此,在编码过程中好的变量名非常重要。对母语不是英语的开发者而言,在日常编程中最烦恼的就是给变量取名,目前,开发人员在编写代码时,当遇到不熟悉的单词时,主要依靠开发人员的经验、查询英文词典或翻译工具的方式获取变量的命名。即通过翻译工具,把中文字符串翻译成对应的英文字符串,然后用这些英文字符串作为变量命名,仅凭开发人员经验对变量进行命名的方式会产生代码不规范的问题,通过查询英文字典的方式或者翻译工具的方式来获取变量的英文命名,效率低下。
为此,本申请提供了一种变量名称翻译方案,能够实现变量规范准确的命名,提高开发的效率、代码的规范性和可读性。
参照图1所示,本发明实施例公开了一种变量名称翻译方法,包括:
步骤S11:遍历Psi对象,以获取Psi属性的待翻译文本。
本实施例中,遍历PsiField变量元素,从PsiField元素获取对应的字符串,所述字符串为待翻译文本,可以理解的是,遍历PsiClass对象中所有PsiField变量元素,也即Psi对象,以获取PsiField元素对应的字符串。
步骤S12:判断所述待翻译文本的文本类别,以得到相应文本类别的判断结果。
本实施例中,判断PsiField元素对应的字符串的文本类别,其中,所述字符串的判断结果可为英文文本类别或者中文文本类别;若所述判断结果为所述待翻译文本为英文,则将所述待翻译文本作为翻译结果进行输出。可以理解的是,当对字符串的文本类别的识别判断为英文类别时,也即此时字符串为英文字符串,相应的,无需对该英文字符串进行翻译,直接将该英文字符串输出至显示页面即可。
步骤S13:若所述判断结果为所述待翻译文本为中文,则基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果。
本实施例中,若对字符串的文本类别判断结果为中文类别,则通过调用IDEA插件并基于用户选择的预设翻译策略确定对应的翻译服务方式,基于选择的翻译服务方式对待翻译文本进行翻译,以得到相应的翻译结果。在一种具体实施方式中,若用户通过用户交互页面输入的预设翻译策略为速度优先翻译策略,那么通过用户交互界面输入速度优先翻译策略,从预设翻译速度排序列表中选择翻译速度最快的翻译服务翻译所述待翻译文本,以获取相应的翻译结果。可以理解的是,如果用户设置的是速度优先翻译策略,选择调用速度优先翻译服务排序列表中排序最前的翻译提供商进行翻译。如果调用失败,则继续调用下一个翻译提供商,以此类推,直到获取到英文翻译结果,若实在没有获取到英文翻译结果,则直接使用原来的待翻译文本进行输出。其中,在调用翻译提供商提供翻译服务的过程中,由于翻译提供商提供了开放API服务,因此可以在代码中通过调用这些API实现翻译功能,对中文字符串进行翻译,获取对应的英文字符串。
在另一种具体实施方式中,若用户通过用户交互页面输入的预设翻译策略为精度优先翻译策略,那么通过用户交互界面输入精度优先翻译策略,从预设翻译精度排序列表中按照从大到小的顺序选择预设数量个翻译服务翻译所述待翻译文本,以获取相应的翻译结果。统计预设数量个翻译服务的翻译结果,并从所有所述翻译结果中选择次数最多的翻译结果作为目标翻译结果。可以理解的是,如果用户设置的是精度优先翻译策略,逐一调用预设翻译精度排序列表中的多个翻译提供商,对待翻译文本进行翻译后进行进一步分析。针对不同翻译提供商返回的翻译结果进行统计,选择出现次数最多的中文字符串,如“英文1”出现2次,“英文2”出现3次,那么选择“英文2”作为翻译结果。当返回的多个中文字符串存在次数一致的情况时,根据优先级决定返回值。如百度翻译和金山翻译返回“英文1”,腾讯翻译和有道翻译返回“英文2”,那么这四个提供商中哪个优先级高就返回哪个提供商的结果。
本实施例中,在进行调用翻译功能把中文字符串翻译成英文字符串之前,还包括:定义翻译接口类Translator,此接口包含翻译方法translate,此方法入参为中文字符串,返回值为英文字符串,即返回值的英文字符串为翻译结果。此方法用于把中文字符串翻译成英文字符串;针对不同的翻译提供商,实现前一步中的Translator接口,即提供多个提供商的翻译实现类,比如腾讯翻译、百度翻译、金山翻译和有道翻译等。IDEA初始化时,实例化翻译实现类,并放入翻译提供商列表。不同的翻译实现类将调用不同的翻译提供商以完成翻译功能;提供用户界面,让用户对不同的翻译提供商进行排序,按照提供商优先级从高到低进行排序,其中,在对翻译提供商进行排序时,可按照不同的翻译策略进行对应的翻译提供商排序,以得到与翻译策略对应的排序列表,例如:速度优先翻译服务排序列表、预设翻译精度排序列表等。
步骤S14:利用所述翻译结果替换所述待翻译文本,完成变量名称的翻译。
本实施例中,将进行翻译过程后得到的翻译结果替换原来的待翻译文本,例如:参照图2所示,当开发人员准备对“用户名”、“密码”、“年龄”进行变量名称的英文翻译,那么经过上述步骤的待翻译文本的确定、待翻译文本的文本类别的判断确定出待翻译文本为中文字符串,需要按照翻译策略选择对应的翻译方式来进行翻译,当选择速度优先翻译策略,则从速度优先翻译服务排序列表中确定出的速度最快的翻译提供商为有道翻译时,则通过有道翻译的在线翻译自动对中文字符串进行翻译,并得到“username”、“password”、“ago”的翻译结果,并将翻译结果插回对应的中文字符串所在的位置,替换原中文字符串。
由此可见,本申请公开一种变量名称翻译方法,包括:遍历Psi对象,以获取Psi属性的待翻译文本;判断所述待翻译文本的文本类别,以得到相应文本类别的判断结果;若所述判断结果为所述待翻译文本为中文,则基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果;利用所述翻译结果替换所述待翻译文本,完成变量名称的翻译。可见,通过对待翻译文本进行自动的文本类别判断,得到文本类别的判断结果之后,通过调用翻译服务自动将中文类别的待翻译文本进行翻译,根据不同的策略调用不同翻译服务,保证翻译的精确性,提高生成的变量名称的准确性,自动转换成满足用户需要的文本类别所对应的翻译结果,提高开发的效率,同时增提高代码的规范性和可读性。
参照图3所示,本发明实施例公开了一种具体的变量名称翻译方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:
步骤S21:触发文本提取操作,对Java文件进行解析,以获取Psi树结构。
本实施例中,当捕获到文本翻译请求之后,立即触发文本提取操作,通过IDEA接口把与文本翻译请求对应Java文件解析成PsiTree,也即获取到Psi树结构。可以理解的是,PSI文件表示PSI元素的层次结构,也即Psi树。单个Psi文件,其本身就是Psi元素,可能包含特定编程语言中的多个Psi树,即Psi元素可以包含其他Psi元素。Psi元素结构主要用于解析IntelliJ平台的源代码文件的内部结构。例如,可以使用Psi元素执行代码分析、执行代码检查或意图动作。
步骤S22:对所述Psi树结构进行处理,以获取Psi对象。
本实施例中,由于PsiElement类是Psi元素的通用基类。一个Java类可以解析成PsiClass(类)、PsiMethod(方法)和PsiField(字段)等。因此,对获取的Psi树结构再次进行解析处理,以得到PsiTree中的PsiClass(Psi类)对象。PsiClass文件结构包含字段表、属性表、方法表等,每个字段、方法也都有属性表,但在Psi中,总体上只有PsiFile和PsiElement。Element即元素,一个PsiFile由许多的PsiElement构成,每个PsiElement也可以由许多的PsiElement构成。PsiElement用于描述源代码的内部结构,不同的结构对应不同的实现类。对应Java文件的PsiElement种类有:PsiClass、PsiField、PsiMethod、PsiCodeBlock、PsiStatement、PsiMethodCallExpression等等。其中,PsiField、PsiMethod都是PsiClass的子元素,PsiCodeBlock是PsiMethod的子元素,PsiMethodCallExpression是PsiCodeBlock的子元素,正是这种关系构造成了Psi树结构。
步骤S23:遍历Psi对象,以获取Psi属性的待翻译文本。
本实施例中,当获取到待翻译文本之后,判断翻译缓存中是否存在此待翻译文本对应的英文字符串的翻译结果的目标翻译缓存。如果存在目标翻译缓存,直接返回翻译缓存中的英文字符串。
步骤S24:判断所述待翻译文本的文本类别,以得到相应文本类别的判断结果。
步骤S25:若所述判断结果为所述待翻译文本为中文,则基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果。
其中,步骤S24、S25中更加详细的处理过程,请参照前述公开的实施例内容,在此不再进行赘述。
步骤S26:利用所述翻译结果替换所述待翻译文本,完成变量名称的翻译。
本实施例中,当利用翻译结果替换待翻译文本,完成变量名称的翻译之后,将所述翻译结果与目标待翻译文本关联性存储至翻译缓存中;当下次出现所述目标待翻译文本的翻译请求时,返回所述翻译缓存中对应的翻译结果。也即,当下一次再次出现之前翻译过的中文字符串的待翻译文本时,先从翻译缓存中查询是否存在对应的英文字符串的翻译结果,若存在,则直接返回输出对应的翻译结果,减少翻译执行过程的步骤,大大减少了翻译等待时间,并且由于翻译缓存中已缓存的翻译结果是经过之前的翻译验证后的翻译结果,因此翻译结果更加规范。
由此可见,根据Java文件中的中文PsiField元素生成英文元素,通过调用在线翻译功能,生成英文的变量名称,并将生成的英文变量名称进行缓存处理,供下次快速获取,提高翻译反应速度。
参照图4所示,本发明实施例还相应公开了一种变量名称翻译装置,包括:
文本获取模块11,用于遍历Psi对象,以获取Psi属性的待翻译文本;
类别判断模块12,用于判断所述待翻译文本的文本类别,以得到相应文本类别的判断结果;
文本翻译模块13,用于若所述判断结果为所述待翻译文本为中文,则基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果;
文本替换模块14,用于利用所述翻译结果替换所述待翻译文本,完成变量名称的翻译。
由此可见,本申请公开一种变量名称翻译方法,包括:遍历Psi对象,以获取Psi属性的待翻译文本;判断所述待翻译文本的文本类别,以得到相应文本类别的判断结果;若所述判断结果为所述待翻译文本为中文,则基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果;利用所述翻译结果替换所述待翻译文本,完成变量名称的翻译。可见,通过对待翻译文本进行自动的文本类别判断,得到文本类别的判断结果之后,通过调用翻译服务自动将中文类别的待翻译文本进行翻译,根据不同的策略调用不同翻译服务,保证翻译的精确性,提高生成的变量名称的准确性,自动转换成满足用户需要的文本类别所对应的翻译结果,提高开发的效率,同时增提高代码的规范性和可读性。
进一步的,本申请实施例还公开了一种电子设备,图5是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图5为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的变量名称翻译方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,以实现处理器21对存储器22中海量数据223的运算与处理,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的变量名称翻译方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。数据223除了可以包括电子设备接收到的由外部设备传输进来的数据,也可以包括由自身输入输出接口25采集到的数据等。
进一步的,本申请还公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的变量名称翻译方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种变量名称翻译方法、装置、设备、存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种变量名称翻译方法,其特征在于,包括:
遍历Psi对象,以获取Psi属性的待翻译文本;
判断所述待翻译文本的文本类别,以得到相应文本类别的判断结果;
若所述判断结果为所述待翻译文本为中文,则基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果;
利用所述翻译结果替换所述待翻译文本,完成变量名称的翻译。
2.根据权利要求1所述的变量名称翻译方法,其特征在于,所述遍历Psi对象,以获取Psi属性的待翻译文本之前,还包括:
触发文本提取操作,对Java文件进行解析,以获取Psi树结构;
对所述Psi树结构进行处理,以获取Psi对象。
3.根据权利要求1所述的变量名称翻译方法,其特征在于,所述判断所述待翻译文本的文本类别,以得到相应文本类别的判断结果之后,还包括:
若所述判断结果为所述待翻译文本为英文,则将所述待翻译文本作为翻译结果进行输出。
4.根据权利要求1所述的变量名称翻译方法,其特征在于,所述基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果,包括:
通过用户交互界面输入速度优先翻译策略,从预设翻译速度排序列表中选择翻译速度最快的翻译服务翻译所述待翻译文本,以获取相应的翻译结果。
5.根据权利要求1所述的变量名称翻译方法,其特征在于,所述基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果,包括:
通过用户交互界面输入精度优先翻译策略,从预设翻译精度排序列表中按照从大到小的顺序选择预设数量个翻译服务翻译所述待翻译文本,以获取相应的翻译结果。
6.根据权利要求5所述的变量名称翻译方法,其特征在于,所述从预设翻译精度排序列表中按照从大到小的顺序选择预设数量个翻译服务翻译所述待翻译文本,以获取相应的翻译结果,包括:
统计预设数量个翻译服务的翻译结果,并从所有所述翻译结果中选择次数最多的翻译结果作为目标翻译结果。
7.根据权利要求1至6任一项所述的变量名称翻译方法,其特征在于,所述获取相应的翻译结果之后,包括:
将所述翻译结果与目标待翻译文本关联性存储至翻译缓存中;
当下次出现所述目标待翻译文本的翻译请求时,返回所述翻译缓存中对应的翻译结果。
8.一种变量名称翻译装置,其特征在于,包括:
文本获取模块,用于遍历Psi对象,以获取Psi属性的待翻译文本;
类别判断模块,用于判断所述待翻译文本的文本类别,以得到相应文本类别的判断结果;
文本翻译模块,用于若所述判断结果为所述待翻译文本为中文,则基于预设翻译策略选择调用对应的翻译服务方式翻译所述待翻译文本,以获取相应的翻译结果;
文本替换模块,用于利用所述翻译结果替换所述待翻译文本,完成变量名称的翻译。
9.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的变量名称翻译方法的步骤。
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的变量名称翻译方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211325885.3A CN115686444A (zh) | 2022-10-27 | 2022-10-27 | 一种变量名称翻译方法、装置、设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211325885.3A CN115686444A (zh) | 2022-10-27 | 2022-10-27 | 一种变量名称翻译方法、装置、设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115686444A true CN115686444A (zh) | 2023-02-03 |
Family
ID=85098990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211325885.3A Pending CN115686444A (zh) | 2022-10-27 | 2022-10-27 | 一种变量名称翻译方法、装置、设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115686444A (zh) |
-
2022
- 2022-10-27 CN CN202211325885.3A patent/CN115686444A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3876116B1 (en) | Method and apparatus for running mini program, electronic device, and storage medium | |
US10169471B2 (en) | Generating and executing query language statements from natural language | |
KR101777392B1 (ko) | 중앙 서버 및 이에 의한 사용자 음성 처리 방법 | |
US10303689B2 (en) | Answering natural language table queries through semantic table representation | |
US20140006004A1 (en) | Generating localized user interfaces | |
WO2019224629A1 (en) | Training data expansion for natural language classification | |
US20140156282A1 (en) | Method and system for controlling target applications based upon a natural language command string | |
CN110968601A (zh) | 一种数据查询处理方法及装置 | |
CN105550206B (zh) | 结构化查询语句的版本控制方法及装置 | |
JP2001084147A (ja) | 文字列変換装置、文字列変換方法及び、記録媒体 | |
US20180365226A1 (en) | Determining context using weighted parsing scoring | |
WO2008054331A1 (en) | System and method for processing language independent natural language statements | |
JP2022510818A (ja) | 改良されたデータマッチングのためのデータレコードの字訳 | |
US20230153541A1 (en) | Generating and updating conversational artifacts from apis | |
CN102597985B (zh) | 因特网域名超级变体 | |
WO2016209714A1 (en) | Data extraction and generation tool | |
CN115686444A (zh) | 一种变量名称翻译方法、装置、设备、存储介质 | |
CN117015781A (zh) | 从图形用户界面生成自然语言界面 | |
US11755633B2 (en) | Entity search system | |
US20150324333A1 (en) | Systems and methods for automatically generating hyperlinks | |
CN110990465A (zh) | 数据导出方法、装置、电子设备以及存储介质 | |
CN115510880A (zh) | 一种api文档生成方法、装置、设备、存储介质 | |
US11971887B2 (en) | Identifying and replacing logically neutral phrases in natural language queries for query processing | |
CN112948264B (zh) | 测试任务的执行方法及装置、系统、存储介质、电子装置 | |
CN116974653B (zh) | 类加载方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |