[发明专利]代码结构树库构建方法和信息推送方法在审
申请号: | 202010513805.1 | 申请日: | 2020-06-08 |
公开(公告)号: | CN113296755A | 公开(公告)日: | 2021-08-24 |
发明(设计)人: | 周康 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F8/33 | 分类号: | G06F8/33;G06F16/9535 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 赵秀芹 |
地址: | 开曼群岛*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码 结构 构建 方法 信息 推送 | ||
1.一种代码结构树库构建方法,其中,所述方法包括:
获取多个样本代码块;
提取所述多个样本代码块中每个样本代码块的结构特征;
对于每个所述样本代码块,基于所述样本代码块的结构特征,构建所述样本代码块对应的代码块结构树;
基于每个所述代码块结构树,确定所述预设代码结构树库。
2.根据权利要求1所述的方法,其中,所述获取多个样本代码块,包括:
获取多个样本代码语句;
基于预设语句拆分规则,对每个所述样本代码语句进行语句拆分,得到所述多个样本代码块。
3.根据权利要求1所述的方法,其中,所述基于每个所述代码块结构树,确定所述预设代码结构树库,包括:
基于预设合并规则,对所有的代码块结构树进行合并,得到所述预设代码结构树库中的每个代码结构树。
4.一种信息推送方法,其中,所述方法包括:
接收用户输入的目标代码信息;
从预设代码结构树库中,筛选出与所述目标代码信息满足预设匹配条件的至少一个目标分支结构;所述预设代码结构树库中的一个代码结构树中的一个分支结构用于表征一个代码块的结构特征;
基于所述目标代码信息,生成每个所述目标分支结构对应的目标代码块;
推送满足预设条件的所述目标代码块。
5.根据权利要求4所述的方法,其中,所述从预设代码结构树库中,筛选出与所述目标代码信息满足预设匹配条件的至少一个目标分支结构,包括:
提取所述目标代码信息的目标结构特征;
基于所述目标结构特征,构建所述目标代码信息对应的目标特征结构树;
从所述预设代码结构树库中,筛选出与所述目标特征结构树满足所述预设匹配条件的至少一个目标分支结构。
6.根据权利要求5所述的方法,其中,所述从所述预设代码结构树库中,筛选出与所述目标特征结构树满足所述预设匹配条件的至少一个目标分支结构,包括:
从所述目标代码信息的起始位置开始,依次提取所述目标代码信息的n个特征关键词;n为正整数;
将所述n个特征关键词与所述预设代码结构树库中的每个代码结构树的至少一个索引进行匹配;
将与所述n个特征关键词匹配的索引所对应的代码结构树,作为目标代码结构树;
将所述目标代码结构树中与所述目标特征结构树满足所述预设匹配条件的分支结构,作为所述目标分支结构。
7.根据权利要求4所述的方法,其中,所述预设条件包括所述目标代码块对应的目标分支结构的使用频率大于预设使用频率阈值。
8.根据权利要求4所述的方法,其中,所述推送满足预设条件的所述目标代码块之后,所述方法还包括:
显示满足预设条件的所述目标代码块。
9.根据权利要求8所述的方法,其中,所述显示满足所述预设条件的所述目标代码块,包括:
按照每个满足所述预设条件的所述目标代码块对应的目标分支结构的使用频率从高到低的顺序,依次显示每个满足所述预设条件的所述目标代码块。
10.根据权利要求4所述的方法,其中,所述基于所述目标代码信息,生成每个所述目标分支结构对应的目标代码块,包括:
对于每个所述目标分支结构,执行以下步骤:
提取所述目标分支结构中的特征关键词;
对于所述目标分支结构中的特征关键词,将所述特征关键词以及与所述特征关键词相邻的m个特征关键词,输入预先训练的类型特征确定模型,得到所述特征关键词后相邻的类型特征信息;m为正整数;
基于所述目标代码信息和所述特征关键词后相邻的类型特征信息,生成所述目标分支结构对应的目标代码块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010513805.1/1.html,转载请声明来源钻瓜专利网。