CN115687136A - 一种脚本程序处理方法、系统、计算机设备及介质 - Google Patents
一种脚本程序处理方法、系统、计算机设备及介质 Download PDFInfo
- Publication number
- CN115687136A CN115687136A CN202211399268.8A CN202211399268A CN115687136A CN 115687136 A CN115687136 A CN 115687136A CN 202211399268 A CN202211399268 A CN 202211399268A CN 115687136 A CN115687136 A CN 115687136A
- Authority
- CN
- China
- Prior art keywords
- programming
- target
- script program
- code data
- keyword
- 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
- 238000012795 verification Methods 0.000 claims abstract description 130
- 238000012545 processing Methods 0.000 claims abstract description 47
- 238000000034 method Methods 0.000 claims abstract description 36
- 230000011218 segmentation Effects 0.000 claims description 25
- 238000013515 script Methods 0.000 claims description 19
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 claims description 7
- 238000013507 mapping Methods 0.000 claims description 6
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 230000002776 aggregation Effects 0.000 claims description 4
- 238000004220 aggregation Methods 0.000 claims 1
- 238000000638 solvent extraction Methods 0.000 claims 1
- 238000012986 modification Methods 0.000 abstract description 15
- 230000004048 modification Effects 0.000 abstract description 15
- 230000033772 system development Effects 0.000 abstract description 8
- 238000013024 troubleshooting Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 238000012827 research and development Methods 0.000 description 4
- 238000005054 agglomeration Methods 0.000 description 3
- 238000003672 processing method Methods 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000013178 mathematical model Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种脚本程序处理方法、系统、计算机设备及介质,方法包括:在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据;将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果;根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。由于本申请在接收到脚本程序的保存指令时,会根据预先训练的代码校验模型对脚本程序对应的代码数据中每个字符进行校验,并对不符合规定的字符进行标准化处理,使得最终的可执行脚本程序能够在上线后正常运行,从而避免了在程序运行错误时花费大量时间针对代码数据进行二次修改排查修改,同时提升了系统开发效率。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种脚本程序处理方法、系统、计算机设备及介质。
背景技术
随着业务系统的逐渐扩大,针对每个业务功能需要研发人员开发出大量的脚本程序,在进行脚本程序开发过程中,目前大部分公司都为研发人员提供了在线的集成开发工具,使得研发人员会在该开发工具中编写脚本程序以实现系统中具体的业务需求。
在现有技术中,研发人员在利用编程语言进行脚本程序开发时,容易将编程语言的编程关键字写错,同时为了便于程序日后的维护,通常需要一边编写代码的同时一边撰写中文注释,该过程中研发人员需要经常切换中英文编辑器,由于研发人员专注业务开发,在编辑代码过程中会忽略切换编辑器,此时会在逻辑代码中容易写入中文字符(例如将英文封号写成中文封号),中文符号和英文符号又是很难用肉眼去观察的,将包含错误编程关键字和中文字符的脚本程序上线到引擎后会出现无法运行的情况,从而降低了系统开发效率。
发明内容
基于此,有必要针对系统开发效率低的问题,提供一种脚本程序处理方法、系统、计算机设备及介质。
一种脚本程序处理方法,方法包括:在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据;将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果;根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。
在其中一个实施例中,根据待处理脚本程序文件生成初始代码数据,包括:获取并读取待处理脚本程序文件中的目标代码数据;根据预设中文注释编辑规则确定并剔除目标代码数据中存在的中文注释部分,得到代码内容部分;将代码内容部分确定为初始代码数据。
在其中一个实施例中,预先训练的代码校验模型包括分词处理模块、结果划分模块以及校验模块;将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果,包括:分词处理模块根据预先构建的编程词典对初始代码数据进行分词,生成分词结果;结果划分模块将分词结果划分为编程关键词集合与标点符号集合;校验模块校验编程关键词集合中每个编程关键词是否正确,生成第一校验结果;校验模块校验标点符号集合中每个标点符号是否为英文标点符号,生成第二校验结果;校验模块将第一校验结果和第二校验结果确定为目标校验结果。
在其中一个实施例中,按照以下步骤生成预先构建的编程词典,包括:确定待处理脚本程序文件所用的目标编程语言;收集目标编程语言的编程语料样本,并构建缓存数组;在编程语料样本中获取目标字符,并构建目标字符与预设英文字符库中任一英文字符的组合字符;其中,目标字符为编程语料样本中任意字符;计算组合字符的凝聚度,并计算组合字符的两侧字符的随机程度,生成左邻接熵与右邻接熵;选取左邻接熵与右邻接熵中的的较小邻接熵与凝聚度作积,生成目标判定值;当目标判定值大于预设阈值时,将目标字符存入缓存数据中;将存入数据的缓存数组和预设英文字符库进行集成处理,生成预先构建的编程词典。
在其中一个实施例中,校验编程关键词集合中每个编程关键词是否正确,生成第一校验结果,包括:将编程关键词集合中每个编程关键词进行向量编码,得到每个编程关键词的特征向量;计算每个编程关键词的特征向量和预设标准编程库中各标准关键词之间的向量相似度,并确定出大于预设相似度的标准关键词;当大于预设相似度的标准关键词的数量为1时,生成编程关键词集合中的编程关键词全部正确的校验信息;将全部正确的校验信息确定为第一校验结果。
在其中一个实施例中,校验标点符号集合中每个标点符号是否为英文标点符号,生成第二校验结果,包括:采用滑动窗口算法创建滑动窗口,并将预设标准英文标点符号作为滑动窗口的参数进行映射关联,得到目标滑动窗口;将标点符号集合中每个标点符号逐一输入目标滑动窗口中判断每个标点符号是否为英文标点符号;输出标点符号集合中不为英文标点符号的多个中文标点符号;将不为英文标点符号的多个中文标点符号确定为第二校验结果。
在其中一个实施例中,根据目标校验结果将初始代码数据进行标准化处理,包括:当目标校验结果中存在不为英文标点符号的多个中文标点符号时,根据字符转换器提取每个中文标点符号对应的英文标点符号;在初始代码数据中确定每个中文标点符号的目标位置;将每个中文标点符号对应的英文标点符号替换到与其对应的目标位置处,以将目标位置处的中文标点符号进行字符转换;或者,当根据目标校验结果确定出存在错误编程关键词时,根据预设标准编程库中各标准关键词映射出与每个错误编程关键词所关联的多个标准关键词;计算每个错误编程关键词和与其关联的每个标准关键词存在的相同字母数量,得到每个标准关键词的字母数量;将最大的字母数量对应的标准关键词确定为每个错误编程关键词的目标关键词;在初始代码数据中确定每个错误编程关键词的目标位置;将每个错误编程关键词的目标关键词替换到每个错误编程关键词的目标位置处,以对每个目标位置处的错误编程关键词进行字符转换。
一种脚本程序处理系统,系统包括:初始代码数据生成模块,用于在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据;目标校验结果输出模块,用于将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果;可执行脚本程序生成模块,用于根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。
一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行上述脚本程序处理方法的步骤。
一种存储有计算机可读指令的介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述脚本程序处理方法的步骤。
上述脚本程序处理方法、系统、设备和介质,脚本程序处理系统首先在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据,然后将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果,最后根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。由于本申请在接收到脚本程序的保存指令时,会根据预先训练的代码校验模型对脚本程序对应的代码数据中每个字符进行校验,并对不符合规定的字符进行标准化处理,使得最终的可执行脚本程序能够在上线后正常运行,从而避免了在程序运行错误时花费大量时间针对代码数据进行二次修改排查修改,同时提升了系统开发效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1为本申请一个实施例中提供的脚本程序处理方法的实施环境图;
图2为本申请一个实施例中计算机设备的内部结构示意图;
图3为本申请一个实施例中提供的脚本程序处理方法的方法示意图;
图4为本申请一个实施例中提供的程序注释示意图;
图5为本申请另一个实施例中提供的程序注释示意图;
图6为本申请另一个实施例中提供的程序注释示意图;
图7为本申请一个实施例中提供的脚本程序处理系统架构图;
图8是本申请另一个实施例中提供的脚本程序处理方法的方法示意图;
图9是本申请实施例提供的一种脚本程序处理系统的系统结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。
图1为一个实施例中提供的脚本程序处理方法的实施环境图,如图1所示,在该实施环境中,包括服务端110以及客户端120。
服务端110可以为服务器,该服务器具体可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,例如为处理脚本程序的服务器设备。服务端110在接收到来自客户端120发送的脚本程序的保存指令时,服务端110根据待处理脚本程序文件生成初始代码数据,服务端110将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果,服务端110根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。
需要说明的是,客户端120可为智能手机、平板电脑、笔记本电脑、台式计算机等,但并不局限于此。服务端110以及客户端120可以通过蓝牙、USB(Universal Serial Bus,通用串行总线)或者其他通讯连接方式进行连接,本发明在此不做限制。
图2为一个实施例中计算机设备的内部结构示意图。如图2所示,该计算机设备包括通过系统总线连接的处理器、介质、存储器和网络接口。其中,该计算机设备的介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种脚本程序处理方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种脚本程序处理方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。其中,介质为一种可读的存储介质。
下面将结合附图3-7,对本申请实施例提供的脚本程序处理方法进行详细介绍。该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的脚本程序处理系统上。该计算机程序可集成在应用中,也可作为独立的工具类应用运行。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大脚本程序处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
请参见图3,为本申请实施例提供了一种脚本程序处理方法的流程示意图。如图3所示,本申请实施例的方法可以包括以下步骤:
S101,在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据;
其中,保存指令是在研发人员编辑完脚本程序后,通过触发保存功能后生成的指令。脚本程序是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,例如采用结构化查询语言编写的脚本程序,结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
在本申请实施例中,在根据待处理脚本程序文件生成初始代码数据时,首先获取并读取待处理脚本程序文件中的目标代码数据,然后根据预设中文注释编辑规则确定并剔除目标代码数据中存在的中文注释部分,得到代码内容部分,最后将代码内容部分确定为初始代码数据。
具体的,预设中文注释编辑规则是编程语言提供的用于在代码中编写注释的策略,该策略使用固定的标识符进行实现,例如在JAVA编程语言中,注释分为单行注释、多行注释以及文档注释。单行注释以双斜杠“//”标识,只能注释一行内容,用在注释信息内容少的地方,例如图4所示。多行注释包含在“/*”和“*/”之间,能注释很多行的内容,例如图5所示。文档注释包含在“/**”和“*/”之间,也能注释多行内容,一般用在类、方法和变量上面,用来描述其作用,例如图6所示。
例如在图4-图6中,为了去除注释带来的干扰,可以将注释内容全部剔除,从而仅仅保留脚本程序中可用代码部分(即本申请中的初始代码数据)进行代码的正确性校验。
在一种可能的实现方式中,用户首先在客户端提供的平台上编写脚本程序,在全部编辑结束后通过触发保存功能按键生成保存指令,然后将该保存指令以及编写的脚本程序同时发送至服务端,服务端在接收到该保存指令后,获取该指令对应的待处理脚本程序文件中的目标代码数据,然后剔除该目标代码数据中的注释内容后得到初始代码数据。
S102,将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果;
其中,预先训练的代码校验模型是判断初始代码数据中的字符是否符合标准字符的数学模型,该数学模型可以基于卷积神经网络进行构建。
通常,预先训练的代码校验模型包括分词处理模块、结果划分模块以及校验模块。
在本申请实施例中,在将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果时,首先分词处理模块根据预先构建的编程词典对初始代码数据进行分词,生成分词结果,然后结果划分模块将分词结果划分为编程关键词集合与标点符号集合,其次校验模块校验编程关键词集合中每个编程关键词是否正确,生成第一校验结果,最后校验模块校验标点符号集合中每个标点符号是否为英文标点符号,生成第二校验结果,并将第一校验结果和第二校验结果确定为目标校验结果。
具体的,可以按照以下步骤生成预先构建的编程词典,首先确定待处理脚本程序文件所用的目标编程语言,并收集目标编程语言的编程语料样本,并构建缓存数组,然后在编程语料样本中获取目标字符,并构建目标字符与预设英文字符库中任一英文字符的组合字符;其中,目标字符为编程语料样本中任意字符,其次计算组合字符的凝聚度,并计算组合字符的两侧字符的随机程度,生成左邻接熵与右邻接熵,并选取左邻接熵与右邻接熵中的的较小邻接熵与凝聚度作积,生成目标判定值,最后当目标判定值大于预设阈值时,将目标字符存入缓存数据中,并将存入数据的缓存数组和预设英文字符库进行集成处理,生成预先构建的编程词典。
具体的,在校验编程关键词集合中每个编程关键词是否正确,生成第一校验结果时,首先将编程关键词集合中每个编程关键词进行向量编码,得到每个编程关键词的特征向量,然后计算每个编程关键词的特征向量和预设标准编程库中各标准关键词之间的向量相似度,并确定出大于预设相似度的标准关键词,其次当大于预设相似度的标准关键词的数量为1时,生成编程关键词集合中的编程关键词全部正确的校验信息,最后将全部正确的校验信息确定为第一校验结果。
具体的,例如中文封号“;”和英文封号“;”十分相似,如果使用中文封号“;”就会导致程序异常。在校验标点符号集合中每个标点符号是否为英文标点符号,生成第二校验结果时,首先采用滑动窗口算法创建滑动窗口,并将预设标准英文标点符号作为滑动窗口的参数进行映射关联,得到目标滑动窗口,然后将标点符号集合中每个标点符号逐一输入目标滑动窗口中判断每个标点符号是否为英文标点符号,其次输出标点符号集合中不为英文标点符号的多个中文标点符号,最后将不为英文标点符号的多个中文标点符号确定为第二校验结果。
在一种可能的实现方式中,服务端首先初始化预先训练的代码校验模型,然后根据预先训练的代码校验模型对初始代码数据进行校验处理,以确定出该初始代码数据中存在的错误字符,模型处理结束后输出待处理脚本程序文件对应的目标校验结果。
进一步地,在生成预先训练的代码校验模型时,首先获取目标编程语言的全部编程关键字以及标准标点符号库,然后根据全部编程关键字以及标准标点符号库构建出正样本,基于该正样本进行二次标注,生成负样本,将正样本与负样本进行错乱混合,得到模型训练样本,采用卷积神经网络构建模型,并对模型设置分词处理逻辑模块、结果划分模块以及校验模块得到代码校验模型,最后将模型训练样本输入代码校验模型中进行训练结束后,生成预先训练的代码校验模型。
S103,根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。
在一种可能的实现方式中,当目标校验结果中存在不为英文标点符号的多个中文标点符号时,首先根据字符转换器提取每个中文标点符号对应的英文标点符号,然后在初始代码数据中确定每个中文标点符号的目标位置,最后将每个中文标点符号对应的英文标点符号替换到与其对应的目标位置处,以将目标位置处的中文标点符号进行字符转换,生成可执行脚本程序进行保存。
在另一种可能的实现方式中,首先当根据目标校验结果确定出存在错误编程关键词时,根据预设标准编程库中各标准关键词映射出与每个错误编程关键词所关联的多个标准关键词,然后计算每个错误编程关键词和与其关联的每个标准关键词存在的相同字母数量,得到每个标准关键词的字母数量,其次将最大的字母数量对应的标准关键词确定为每个错误编程关键词的目标关键词,并在初始代码数据中确定每个错误编程关键词的目标位置,最后将每个错误编程关键词的目标关键词替换到每个错误编程关键词的目标位置处,以对每个目标位置处的错误编程关键词进行字符转换,生成可执行脚本程序进行保存。
例如图7所示,图7是本申请提供的一种脚本程序处理系统架构图,图7是以结构化查询语言SQL进行举例说明,用户在编辑平台撰写完SQL脚本文件后,此时该文件假如存在中文字符风险时,用户通过触发SQL命令字符后将SQL脚本进行核查,此时将核查出来的中文字符进行字符转换后保存到脚本文件库,最后保存的都是符合规定的正常字符脚本,并将脚本文件库中的脚本文件分配至解析引擎进行处理,就可以返回正常业务结果给用户进行展示,避免了由于SQL脚本中存在的中文字符而导致运行异常的情况,大大提升了SQL脚本的运行效率。
在本申请实施例中,脚本程序处理系统首先在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据,然后将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果,最后根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。由于本申请在接收到脚本程序的保存指令时,会根据预先训练的代码校验模型对脚本程序对应的代码数据中每个字符进行校验,并对不符合规定的字符进行标准化处理,使得最终的可执行脚本程序能够在上线后正常运行,从而避免了在程序运行错误时花费大量时间针对代码数据进行二次修改排查修改,同时提升了系统开发效率。
请参见图8,为本申请实施例提供了一种脚本程序处理方法的流程示意图。如图8所示,本申请实施例的方法可以包括以下步骤:
S201,在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据;
S202,分词处理模块根据预先构建的编程词典对初始代码数据进行分词,生成分词结果;
S203,结果划分模块将分词结果划分为编程关键词集合与标点符号集合;
S204,校验模块校验编程关键词集合中每个编程关键词是否正确,生成第一校验结果;
S205,校验模块校验标点符号集合中每个标点符号是否为英文标点符号,生成第二校验结果;
S206,校验模块将第一校验结果和第二校验结果确定为目标校验结果;
S207,根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。
在本申请实施例中,脚本程序处理系统首先在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据,然后将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果,最后根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。由于本申请在接收到脚本程序的保存指令时,会根据预先训练的代码校验模型对脚本程序对应的代码数据中每个字符进行校验,并对不符合规定的字符进行标准化处理,使得最终的可执行脚本程序能够在上线后正常运行,从而避免了在程序运行错误时花费大量时间针对代码数据进行二次修改排查修改,同时提升了系统开发效率。
下述为本发明系统实施例,可以用于执行本发明方法实施例。对于本发明系统实施例中未披露的细节,请参照本发明方法实施例。
请参见图9,其示出了本发明一个示例性实施例提供的脚本程序处理系统的结构示意图。该脚本程序处理系统可以通过软件、硬件或者两者的结合实现成为设备的全部或一部分。该系统1包括初始代码数据生成模块10、目标校验结果输出模块20、可执行脚本程序生成模块30。
初始代码数据生成模块10,用于在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据;
目标校验结果输出模块20,用于将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果;
可执行脚本程序生成模块30,用于根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。
需要说明的是,上述实施例提供的脚本程序处理系统在执行脚本程序处理方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的脚本程序处理系统与脚本程序处理方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请实施例中,脚本程序处理系统首先在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据,然后将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果,最后根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。由于本申请在接收到脚本程序的保存指令时,会根据预先训练的代码校验模型对脚本程序对应的代码数据中每个字符进行校验,并对不符合规定的字符进行标准化处理,使得最终的可执行脚本程序能够在上线后正常运行,从而避免了在程序运行错误时花费大量时间针对代码数据进行二次修改排查修改,同时提升了系统开发效率。
在一个实施例中,提出了一种计算机设备,设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据;
将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果;
根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。
在一个实施例中,处理器执行根据待处理脚本程序文件生成初始代码数据时,具体执行以下操作:
获取并读取待处理脚本程序文件中的目标代码数据;
根据预设中文注释编辑规则确定并剔除目标代码数据中存在的中文注释部分,得到代码内容部分;
将代码内容部分确定为初始代码数据。
在一个实施例中,处理器执行将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果时,具体执行以下操作:
分词处理模块根据预先构建的编程词典对初始代码数据进行分词,生成分词结果;
结果划分模块将分词结果划分为编程关键词集合与标点符号集合;
校验模块校验编程关键词集合中每个编程关键词是否正确,生成第一校验结果;
校验模块校验标点符号集合中每个标点符号是否为英文标点符号,生成第二校验结果;
校验模块将第一校验结果和第二校验结果确定为目标校验结果。
在一个实施例中,处理器执行生成预先构建的编程词典时,具体执行以下操作:
确定待处理脚本程序文件所用的目标编程语言;
收集目标编程语言的编程语料样本,并构建缓存数组;
在编程语料样本中获取目标字符,并构建目标字符与预设英文字符库中任一英文字符的组合字符;其中,目标字符为编程语料样本中任意字符;
计算组合字符的凝聚度,并计算组合字符的两侧字符的随机程度,生成左邻接熵与右邻接熵;
选取左邻接熵与右邻接熵中的的较小邻接熵与凝聚度作积,生成目标判定值;
当目标判定值大于预设阈值时,将目标字符存入缓存数据中;
将存入数据的缓存数组和预设英文字符库进行集成处理,生成预先构建的编程词典。
在一个实施例中,处理器在执行校验编程关键词集合中每个编程关键词是否正确,生成第一校验结果时,具体执行以下操作:
将编程关键词集合中每个编程关键词进行向量编码,得到每个编程关键词的特征向量;
计算每个编程关键词的特征向量和预设标准编程库中各标准关键词之间的向量相似度,并确定出大于预设相似度的标准关键词;
当大于预设相似度的标准关键词的数量为1时,生成编程关键词集合中的编程关键词全部正确的校验信息;
将全部正确的校验信息确定为第一校验结果。
在一个实施例中,处理器执行校验标点符号集合中每个标点符号是否为英文标点符号,生成第二校验结果时,具体执行以下操作:
采用滑动窗口算法创建滑动窗口,并将预设标准英文标点符号作为滑动窗口的参数进行映射关联,得到目标滑动窗口;
将标点符号集合中每个标点符号逐一输入目标滑动窗口中判断每个标点符号是否为英文标点符号;
输出标点符号集合中不为英文标点符号的多个中文标点符号;
将不为英文标点符号的多个中文标点符号确定为第二校验结果。
在一个实施例中,处理器执行根据目标校验结果将初始代码数据进行标准化处理时,具体执行以下操作:
当目标校验结果中存在不为英文标点符号的多个中文标点符号时,根据字符转换器提取每个中文标点符号对应的英文标点符号;
在初始代码数据中确定每个中文标点符号的目标位置;
将每个中文标点符号对应的英文标点符号替换到与其对应的目标位置处,以将目标位置处的中文标点符号进行字符转换;
或者,
当根据目标校验结果确定出存在错误编程关键词时,根据预设标准编程库中各标准关键词映射出与每个错误编程关键词所关联的多个标准关键词;
计算每个错误编程关键词和与其关联的每个标准关键词存在的相同字母数量,得到每个标准关键词的字母数量;
将最大的字母数量对应的标准关键词确定为每个错误编程关键词的目标关键词;
在初始代码数据中确定每个错误编程关键词的目标位置;
将每个错误编程关键词的目标关键词替换到每个错误编程关键词的目标位置处,以对每个目标位置处的错误编程关键词进行字符转换。
在本申请实施例中,脚本程序处理系统首先在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据,然后将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果,最后根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。由于本申请在接收到脚本程序的保存指令时,会根据预先训练的代码校验模型对脚本程序对应的代码数据中每个字符进行校验,并对不符合规定的字符进行标准化处理,使得最终的可执行脚本程序能够在上线后正常运行,从而避免了在程序运行错误时花费大量时间针对代码数据进行二次修改排查修改,同时提升了系统开发效率。
在一个实施例中,提出了一种存储有计算机可读指令的介质,该计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:
在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据;
将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果;
根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。
在一个实施例中,处理器执行根据待处理脚本程序文件生成初始代码数据时,具体执行以下操作:
获取并读取待处理脚本程序文件中的目标代码数据;
根据预设中文注释编辑规则确定并剔除目标代码数据中存在的中文注释部分,得到代码内容部分;
将代码内容部分确定为初始代码数据。
在一个实施例中,处理器执行将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果时,具体执行以下操作:
分词处理模块根据预先构建的编程词典对初始代码数据进行分词,生成分词结果;
结果划分模块将分词结果划分为编程关键词集合与标点符号集合;
校验模块校验编程关键词集合中每个编程关键词是否正确,生成第一校验结果;
校验模块校验标点符号集合中每个标点符号是否为英文标点符号,生成第二校验结果;
校验模块将第一校验结果和第二校验结果确定为目标校验结果。
在一个实施例中,处理器执行生成预先构建的编程词典时,具体执行以下操作:
确定待处理脚本程序文件所用的目标编程语言;
收集目标编程语言的编程语料样本,并构建缓存数组;
在编程语料样本中获取目标字符,并构建目标字符与预设英文字符库中任一英文字符的组合字符;其中,目标字符为编程语料样本中任意字符;
计算组合字符的凝聚度,并计算组合字符的两侧字符的随机程度,生成左邻接熵与右邻接熵;
选取左邻接熵与右邻接熵中的的较小邻接熵与凝聚度作积,生成目标判定值;
当目标判定值大于预设阈值时,将目标字符存入缓存数据中;
将存入数据的缓存数组和预设英文字符库进行集成处理,生成预先构建的编程词典。
在一个实施例中,处理器在执行校验编程关键词集合中每个编程关键词是否正确,生成第一校验结果时,具体执行以下操作:
将编程关键词集合中每个编程关键词进行向量编码,得到每个编程关键词的特征向量;
计算每个编程关键词的特征向量和预设标准编程库中各标准关键词之间的向量相似度,并确定出大于预设相似度的标准关键词;
当大于预设相似度的标准关键词的数量为1时,生成编程关键词集合中的编程关键词全部正确的校验信息;
将全部正确的校验信息确定为第一校验结果。
在一个实施例中,处理器执行校验标点符号集合中每个标点符号是否为英文标点符号,生成第二校验结果时,具体执行以下操作:
采用滑动窗口算法创建滑动窗口,并将预设标准英文标点符号作为滑动窗口的参数进行映射关联,得到目标滑动窗口;
将标点符号集合中每个标点符号逐一输入目标滑动窗口中判断每个标点符号是否为英文标点符号;
输出标点符号集合中不为英文标点符号的多个中文标点符号;
将不为英文标点符号的多个中文标点符号确定为第二校验结果。
在一个实施例中,处理器执行根据目标校验结果将初始代码数据进行标准化处理时,具体执行以下操作:
当目标校验结果中存在不为英文标点符号的多个中文标点符号时,根据字符转换器提取每个中文标点符号对应的英文标点符号;
在初始代码数据中确定每个中文标点符号的目标位置;
将每个中文标点符号对应的英文标点符号替换到与其对应的目标位置处,以将目标位置处的中文标点符号进行字符转换;
或者,
当根据目标校验结果确定出存在错误编程关键词时,根据预设标准编程库中各标准关键词映射出与每个错误编程关键词所关联的多个标准关键词;
计算每个错误编程关键词和与其关联的每个标准关键词存在的相同字母数量,得到每个标准关键词的字母数量;
将最大的字母数量对应的标准关键词确定为每个错误编程关键词的目标关键词;
在初始代码数据中确定每个错误编程关键词的目标位置;
将每个错误编程关键词的目标关键词替换到每个错误编程关键词的目标位置处,以对每个目标位置处的错误编程关键词进行字符转换。
在本申请实施例中,脚本程序处理系统首先在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据,然后将初始代码数据输入预先训练的代码校验模型中,输出待处理脚本程序文件对应的目标校验结果,最后根据目标校验结果将初始代码数据进行标准化处理,生成可执行脚本程序进行保存。由于本申请在接收到脚本程序的保存指令时,会根据预先训练的代码校验模型对脚本程序对应的代码数据中每个字符进行校验,并对不符合规定的字符进行标准化处理,使得最终的可执行脚本程序能够在上线后正常运行,从而避免了在程序运行错误时花费大量时间针对代码数据进行二次修改排查修改,同时提升了系统开发效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性介质,或随机存储记忆体(RandomAccess Memory,RAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种脚本程序处理方法,其特征在于,所述方法包括:
在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据;
将所述初始代码数据输入预先训练的代码校验模型中,输出所述待处理脚本程序文件对应的目标校验结果;
根据所述目标校验结果将所述初始代码数据进行标准化处理,生成可执行脚本程序进行保存。
2.根据权利要求1所述的方法,其特征在于,所述根据待处理脚本程序文件生成初始代码数据,包括:
获取并读取待处理脚本程序文件中的目标代码数据;
根据预设中文注释编辑规则确定并剔除所述目标代码数据中存在的中文注释部分,得到代码内容部分;
将所述代码内容部分确定为初始代码数据。
3.根据权利要求1所述的方法,其特征在于,所述预先训练的代码校验模型包括分词处理模块、结果划分模块以及校验模块;
所述将所述初始代码数据输入预先训练的代码校验模型中,输出所述待处理脚本程序文件对应的目标校验结果,包括:
分词处理模块根据预先构建的编程词典对所述初始代码数据进行分词,生成分词结果;
结果划分模块将所述分词结果划分为编程关键词集合与标点符号集合;
校验模块校验所述编程关键词集合中每个编程关键词是否正确,生成第一校验结果;
校验模块校验所述标点符号集合中每个标点符号是否为英文标点符号,生成第二校验结果;
校验模块将所述第一校验结果和所述第二校验结果确定为目标校验结果。
4.根据权利要求3所述的方法,其特征在于,按照以下步骤生成预先构建的编程词典,包括:
确定所述待处理脚本程序文件所用的目标编程语言;
收集所述目标编程语言的编程语料样本,并构建缓存数组;
在所述编程语料样本中获取目标字符,并构建所述目标字符与预设英文字符库中任一英文字符的组合字符;其中,所述目标字符为所述编程语料样本中任意字符;
计算所述组合字符的凝聚度,并计算所述组合字符的两侧字符的随机程度,生成左邻接熵与右邻接熵;
选取所述左邻接熵与右邻接熵中的的较小邻接熵与所述凝聚度作积,生成目标判定值;
当所述目标判定值大于预设阈值时,将所述目标字符存入所述缓存数据中;
将存入数据的缓存数组和预设英文字符库进行集成处理,生成预先构建的编程词典。
5.根据权利要求3所述的方法,其特征在于,所述校验所述编程关键词集合中每个编程关键词是否正确,生成第一校验结果,包括:
将所述编程关键词集合中每个编程关键词进行向量编码,得到每个编程关键词的特征向量;
计算每个编程关键词的特征向量和预设标准编程库中各标准关键词之间的向量相似度,并确定出大于预设相似度的标准关键词;
当大于预设相似度的标准关键词的数量为1时,生成所述编程关键词集合中的编程关键词全部正确的校验信息;
将全部正确的校验信息确定为第一校验结果。
6.根据权利要求3所述的方法,其特征在于,所述校验所述标点符号集合中每个标点符号是否为英文标点符号,生成第二校验结果,包括:
采用滑动窗口算法创建滑动窗口,并将预设标准英文标点符号作为所述滑动窗口的参数进行映射关联,得到目标滑动窗口;
将所述标点符号集合中每个标点符号逐一输入所述目标滑动窗口中判断每个标点符号是否为英文标点符号;
输出所述标点符号集合中不为英文标点符号的多个中文标点符号;
将所述不为英文标点符号的多个中文标点符号确定为第二校验结果。
7.根据权利要求6所述的方法,其特征在于,所述根据所述目标校验结果将所述初始代码数据进行标准化处理,包括:
当所述目标校验结果中存在不为英文标点符号的多个中文标点符号时,根据字符转换器提取每个中文标点符号对应的英文标点符号;
在所述初始代码数据中确定每个中文标点符号的目标位置;
将所述每个中文标点符号对应的英文标点符号替换到与其对应的所述目标位置处,以将所述目标位置处的中文标点符号进行字符转换;
或者,
当根据所述目标校验结果确定出存在错误编程关键词时,根据预设标准编程库中各标准关键词映射出与每个错误编程关键词所关联的多个标准关键词;
计算所述每个错误编程关键词和与其关联的每个标准关键词存在的相同字母数量,得到每个标准关键词的字母数量;
将最大的字母数量对应的标准关键词确定为每个错误编程关键词的目标关键词;
在所述初始代码数据中确定每个错误编程关键词的目标位置;
将所述每个错误编程关键词的目标关键词替换到所述每个错误编程关键词的目标位置处,以对每个目标位置处的错误编程关键词进行字符转换。
8.一种脚本程序处理系统,其特征在于,所述系统包括:
初始代码数据生成模块,用于在接收到脚本程序的保存指令时,根据待处理脚本程序文件生成初始代码数据;
目标校验结果输出模块,用于将所述初始代码数据输入预先训练的代码校验模型中,输出所述待处理脚本程序文件对应的目标校验结果;
可执行脚本程序生成模块,用于根据所述目标校验结果将所述初始代码数据进行标准化处理,生成可执行脚本程序进行保存。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项权利要求所述脚本程序处理方法的步骤。
10.一种存储有计算机可读指令的介质,其特征在于,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至7中任一项权利要求所述脚本程序处理的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211399268.8A CN115687136A (zh) | 2022-11-09 | 2022-11-09 | 一种脚本程序处理方法、系统、计算机设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211399268.8A CN115687136A (zh) | 2022-11-09 | 2022-11-09 | 一种脚本程序处理方法、系统、计算机设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115687136A true CN115687136A (zh) | 2023-02-03 |
Family
ID=85049508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211399268.8A Pending CN115687136A (zh) | 2022-11-09 | 2022-11-09 | 一种脚本程序处理方法、系统、计算机设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115687136A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115826991A (zh) * | 2023-02-14 | 2023-03-21 | 江西曼荼罗软件有限公司 | 软件脚本生成方法、系统、计算机及可读存储介质 |
-
2022
- 2022-11-09 CN CN202211399268.8A patent/CN115687136A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115826991A (zh) * | 2023-02-14 | 2023-03-21 | 江西曼荼罗软件有限公司 | 软件脚本生成方法、系统、计算机及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110765265B (zh) | 信息分类抽取方法、装置、计算机设备和存储介质 | |
CN111859960B (zh) | 基于知识蒸馏的语义匹配方法、装置、计算机设备和介质 | |
WO2020192401A1 (en) | System and method for generating answer based on clustering and sentence similarity | |
US11170169B2 (en) | System and method for language-independent contextual embedding | |
CN111738001A (zh) | 同义词识别模型的训练方法、同义词确定方法及设备 | |
CN110867231A (zh) | 基于文本分类的疾病预测方法、装置、计算机设备及介质 | |
CN112380837B (zh) | 基于翻译模型的相似句子匹配方法、装置、设备及介质 | |
CN113591480B (zh) | 电力计量的命名实体识别方法、装置和计算机设备 | |
CN111984792A (zh) | 网站分类方法、装置、计算机设备及存储介质 | |
US11822896B2 (en) | Contextual diagram-text alignment through machine learning | |
CN113159013A (zh) | 基于机器学习的段落识别方法、装置、计算机设备和介质 | |
CN111967253A (zh) | 一种实体消歧方法、装置、计算机设备及存储介质 | |
CN116611071A (zh) | 一种基于多模态的函数级漏洞检测的方法 | |
CN115757054A (zh) | 一种日志记录方法、系统、计算机设备及介质 | |
CN115687136A (zh) | 一种脚本程序处理方法、系统、计算机设备及介质 | |
CN110633456A (zh) | 语种识别方法、装置、服务器及存储介质 | |
CN112579781B (zh) | 文本归类方法、装置、电子设备及介质 | |
US11176311B1 (en) | Enhanced section detection using a combination of object detection with heuristics | |
CN116468025A (zh) | 电子病历结构化方法、装置、电子设备及存储介质 | |
WO2019148797A1 (zh) | 自然语言处理方法、装置、计算机设备和存储介质 | |
CN116226315A (zh) | 基于人工智能的敏感信息检测方法、装置及相关设备 | |
KR102363958B1 (ko) | 이중 클러스터링 기반 소비자 인식 분석 방법, 장치 및 프로그램 | |
CN114974554A (zh) | 融合图谱知识强化病历特征的方法、装置及存储介质 | |
CN114416847A (zh) | 一种数据转换的方法、装置、服务器及存储介质 | |
CN113918165A (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 |