[发明专利]变量替换方法、装置、系统及存储介质在审
申请号: | 202110266762.6 | 申请日: | 2021-03-11 |
公开(公告)号: | CN113031959A | 公开(公告)日: | 2021-06-25 |
发明(设计)人: | 李瑞 | 申请(专利权)人: | 北京金山云网络技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 北京华夏泰和知识产权代理有限公司 11662 | 代理人: | 卢万腾;石鸣宇 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 变量 替换 方法 装置 系统 存储 介质 | ||
1.一种变量替换方法,其特征在于,所述方法包括:
获取包含有预设变量表达式的第一描述信息、至少一个变量值,以及每一个所述变量值对应的标识信息;
对所述第一描述信息进行解析,获取至少一个键值对;
依次遍历每一个键值对中的值对应的数据类型;
当第一值的数据类型为第一预设数据类型时,从所述第一值中提取预设变量表达式,其中,所述第一值为所述至少一个键值对中第一键值对对应的值,所述第一键值对为所述至少一个键值对中的任一键值对,所述预设变量表达式中包括变量;
根据所述标识信息以及所述变量,从所述至少一个变量值中提取与所述变量对应的第一变量值;
根据所述预设变量表达式和所述第一变量值,将所述预设变量表达式中的变量替换为所述第一变量值,直至所述第一描述信息中的所有变量都已替换为与之对应的变量值后,输出第二描述信息。
2.根据权利要求1所述的方法,其特征在于,当所述第一值的数据类型为第二预设数据类型时,所述方法还包括:
将所述第一值作为第i子层的键值对,进行层级递进划分;
将当前层作为所述第i子层的键值对中的关键字,当前层的子层作为所述第i子层的键值对对应的第i值;
识别所述第i值的数据类型;
当所述第i值的数据类型为所述第一数据类型时,从所述第i值中提取所述预设变量表达式,
或者,当所述第i值的数据类型依然为所述第二预设数据类型时,将所述第i值作为第i+1子层的键值对,重新进行层级划分,并进行遍历,直至识别第i子层的键值对对应的最终子层级中所包括的值的数据类型为所述第一数据类型时,从所述最终子层级中提取所述预设变量表达式,其中,i为正整数。
3.根据权利要求2所述的方法,其特征在于,当值的数据类型不是所述第一预设数据类型或所述第二预设数据类型时,则停止与所述值对应的键值对的任何处理操作,其中,所述值包括所述第一值、所述第i值,以及所述第i+1子层的值。
4.根据权利要求1所述的方法,其特征在于,当所述第一变量值为所述第二预设数据类型时,所述根据所述标识信息以及所述变量,从所述至少一个变量值中提取与所述变量对应的第一变量值之后,所述方法还包括:
对所述第一变量值作为新的键值对,进行层级划分;
将当前层作为所述新的键值对中的关键字,当前层的子层作为所述新的键值对中的值;
识别所述新的键值对中值的数据类型;
当所述新的键值对中值的数据类型依然为所述第二预设数据类型时,将所述新的键值对中的值,再次作为另一个新的键值对,并重新进行层级划分,并进行遍历;
直至遍历到所述第一变量值中最后一个子层级时结束,将最后一个子层级对应的值作为所述变量对应的最终变量值。
5.根据权利要求4所述的方法,其特征在于,所述预设变量表达式还包括:变量值预设输出数据类型表达式,和/或变量默认输出值;
所述变量值预设输出数据类型表达式,用于指示与所变量对应的变量值最终输出的数据类型;
所述变量默认输出值,用于当确定与所述变量对应的变量值为空时,将所述变量替换为所述默认输出值。
6.根据权利要求2-5任一项所述的方法,其特征在于,所述第一数据类型为字符串类型,所述第二数据类型为对象和/或数组类型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京金山云网络技术有限公司,未经北京金山云网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110266762.6/1.html,转载请声明来源钻瓜专利网。