CN107967245A - 数据处理方法、装置、终端和存储介质 - Google Patents
数据处理方法、装置、终端和存储介质 Download PDFInfo
- Publication number
- CN107967245A CN107967245A CN201711288801.2A CN201711288801A CN107967245A CN 107967245 A CN107967245 A CN 107967245A CN 201711288801 A CN201711288801 A CN 201711288801A CN 107967245 A CN107967245 A CN 107967245A
- Authority
- CN
- China
- Prior art keywords
- data
- character string
- characters
- array
- character
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
Abstract
本发明提供一种数据处理方法、装置、终端和存储介质,该方法包括:根据用户录入的批次号从数据源中获取第一数据;对所述第一数据的每个字符串的移入SI字符和移出SO字符进行配对检测,生成检测结果,所述检测结果用于指示字符串是否出现异常;若所述检测结果指示字符串出现异常,则生成异常报告,所述异常报告中包括异常字符串对应的数据行号和数据特征,能够大大缩短人工比对时间,提高运维效率,节省运维成本。
Description
技术领域
本发明实施例涉及通信技术,尤其涉及一种数据处理方法、装置、终端和存储介质。
背景技术
广义二进制编码的十进制交换码(Extended Binary Coded DecimalInterchange Code,EBCDIC)为国际商用机器公司(IBM)于1963年-64年间推出的字符编码表,根据其规则,中文字符在IBM的主机中是以移入(shift in,SI)字符、移出(shift out,SO)字符包含起来的十六进制字符串。
IBM i主机(AS400)作为核心系统可以用来处理和保存保单的核心数据,例如,最为常见的数据处理方式是定期将客户的待缴款、已缴款、发票等信息以预订的格式批量生成大文件,然后将大文件转发到开放平台产生实际的信件。IBM i主机采用了EBCDIC字符编码表,在开放平台与主机交互时,可能会将一些异常中文字符串(例如,缺少SO或SI)写入到主机中,这些异常中文字符在中文环境的终端中能够正常显示,但将这些大文件通过文件传输协议(File Transfer Protocol,FTP)传输到开放平台时,异常中文字符串无法被正常转换,当用户发现文件记录不正常时,用户主动联系运维人员查找并修正错误数据。
但是,运维人员需用纯手工手段找出错误数据并修正,由于数据量大,排查非常困难,浪费大量人力物力,执行效率低。
发明内容
本发明实施例提供一种数据处理方法、装置、终端和存储介质,能够大大缩短人工比对时间,提高运维效率,节省运维成本。
本发明实施例第一方面提供一种数据处理方法,包括:
根据用户录入的批次号从数据源中获取第一数据;
对所述第一数据的每个字符串的移入SI字符和移出SO字符进行配对检测,生成检测结果,所述检测结果用于指示字符串是否出现异常;
若所述检测结果指示字符串出现异常,则生成异常报告,所述异常报告中包括异常字符串对应的数据行号和数据特征。
可选地,所述对所述第一数据的每个字符的移入SI字符和移出SO字符进行配对检测,生成检测结果,包括:
累积所述第一数据的每个字符中的SI字符和SO字符的出现次数;
若所述出现次数除以2的余数不等于0,则所述检测结果指示字符串异常。
可选地,所述对所述第一数据的每个字符的移入SI字符和移出SO字符进行配对检测,生成检测结果之后,所述方法还包括:
对所述第一数据进行逐行分析,获取第一数组,所述第一数组包括字符串序号、SI字符的位置、汉字字符串长度、所述空格位置、SO字符的位置和配对标识;
根据所述第一数组修复所述第一数据。
可选地,所述根据所述第一数组修复所述第一数据,包括:
对所述第一数组中每个所述字符串序号对应的配对标识进行检查;
当所述配对标识为配对失败标识时,则根据所述SI字符的位置获取所述配对失败标识对应的字符串中的第一个SI字符;
若所述第一个SI字符之后存在空格,则将所述第一SI字符之后的第一个空格替换为SO字符,并根据所述汉字字符串长度将所述第一个空格之后的字符串向后移位,获取第二数据。
可选地,所述获取第二数据之后,所述方法还包括:
对所述第二数据进行逐行分析,更新所述第一数组;
根据更新后的第一数组修复所述第二数据。
可选地,所述对所述第一数据的每个字符的移入SI字符和移出SO字符进行配对检测,生成检测结果之后,所述方法还包括:
根据所述检测结果获取第三数据,所述第三数据包括异常字符串;
对所述第三数据进行逐行分析,获取第二数组,所述第二数组包括字符串序号、SI字符的位置、汉字字符串长度和空格位置;
根据所述第二数组修复所述第三数据。
可选地,所述根据所述第二数组修复所述第三数据,包括:
根据所述第二数组中的所述SI字符的位置,获取所述第三数据的每个字符串中的SI字符;
若所述SI字符之后存在空格,则将所述SI字符之后的第一个空格替换为SO字符,并根据所述汉字字符串长度将所述第一个空格之后的字符串向后移位。
本发明实施例第二方面提供一种数据处理装置,包括:
第一获取模块,用于根据用户录入的批次号从数据源中获取第一数据;
检测模块,用于对所述第一数据的每个字符串的移入SI字符和移出SO字符进行配对检测,生成检测结果,所述检测结果用于指示字符串是否出现异常;
生成模块,用于若所述检测结果指示字符串出现异常,则生成异常报告,所述异常报告中包括异常字符串对应的数据行号和数据特征。
可选地,检测模块具体用于累积所述第一数据的每个字符中的SI字符和SO字符的出现次数;若所述出现次数除以2的余数不等于0,则所述检测结果指示字符串异常。
可选地,所述装置还包括:
第一分析模块,用于对所述第一数据进行逐行分析,获取第一数组,所述第一数组包括字符串序号、SI字符的位置、汉字字符串长度、所述空格位置、SO字符的位置和配对标识;
第一修复模块,用于根据所述第一数组修复所述第一数据。
可选地,所述第一修复模块具体用于对所述第一数组中每个所述字符串序号对应的配对标识进行检查;当所述配对标识为配对失败标识时,则根据所述SI字符的位置获取所述配对失败标识对应的字符串中的第一个SI字符;若所述第一个SI字符之后存在空格,则将所述第一SI字符之后的第一个空格替换为SO字符,并根据所述汉字字符串长度将所述第一个空格之后的字符串向后移位,获取第二数据。
可选地,所述第一分析模块还用于对所述第二数据进行逐行分析,更新所述第一数组;
第一修复模块还用于根据更新后的第一数组修复所述第二数据。
可选地,所述装置还包括:
第二获取模块,用于根据所述检测结果获取第三数据,所述第三数据包括异常字符串;
第二分析模块,用于对所述第三数据进行逐行分析,获取第二数组,所述第二数组包括字符串序号、SI字符的位置、汉字字符串长度和空格位置;
第二修复模块,用于根据所述第二数组修复所述第三数据。
可选地,所述第二修复模块具体用于根据所述第二数组中的所述SI字符的位置,获取所述第三数据的每个字符串中的SI字符;若所述SI字符之后存在空格,则将所述SI字符之后的第一个空格替换为SO字符,并根据所述汉字字符串长度将所述第一个空格之后的字符串向后移位。
本发明实施例第三方面还提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现第一方面任一项所述数据处理方法的步骤。
本发明实施例第四方面还提供一种终端,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为通过执行所述可执行指令来执行第一方面任一项所述数据处理方法的步骤。
本发明实施例提供的数据处理方法、装置、终端和存储介质,根据用户录入的批次号从数据源中获取第一数据,对第一数据的每个字符串的SI字符和SO字符进行配对检测,生成检测结果,若检测结果指示字符串出现异常,则生成包括异常字符串对应的数据行号和数据特征的异常报告,在海量数据的情况下,由服务器自动检测出异常字符串,通过异常报告输出异常字符串的位置,能够大大缩短人工比对时间,提高运维效率,节省运维成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的一种数据处理方法的流程图;
图2为本发明另一实施例提供的一种数据处理方法的流程图;
图3为本发明另一实施例提供的一种数据处理方法的流程图;
图4为本发明另一实施例提供的一种数据处理方法的流程图;
图5为本发明再一实施例提供的一种数据处理方法的流程图;
图6为本发明再一实施例提供的一种数据处理方法的流程图;
图7为本发明一实施例提供的一种数据处理装置的框图;
图8为本发明另一实施例提供的一种数据处理装置的框图;
图9为本发明另一实施例提供的一种数据处理装置的框图;
图10为本发明一实施例提供的一种终端的框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明一实施例提供的一种数据处理方法的流程图,该方法的执行主体可以为服务器,如图1所示,本实施例的方法可以包括:
步骤101、根据用户录入的批次号从数据源中获取第一数据。
在本实施例中,用户每次录入数据时都生成一个批次号,录入的数据被保存在一个数据库文件中,该批次号相当于一个索引或标识,每个批次号对应一个数据库文件,或者,每个批次号对应一个数据库文件的保存地址。当需要对数据源中的某个数据库文件中的进行检测时,可以根据用户录入的批次号获取对应的数据库文件,该数据库文件中的数据即为第一数据。
步骤102、对第一数据的每个字符串的SI字符和SO字符进行配对检测,生成检测结果,检测结果用于指示字符串是否出现异常。
在本实施例中,根据EBCDIC规则,中文字符在IBM的主机中是以SI字符、SO字符包含起来的十六进制字符串,也即,SO字符或SI字符是成对出现的。例如,一个SI字符之后必然出现一个SO字符,若某个SI字符之后没有出现SO字符,或者,在两个SI字符之间没有出现SO字符,或者,在两个SO字符之间没有出现SI字符,则说明该字符串出现异常。
对SO字符和SI字符进行配对检测方法也可以有多种,例如,对于第一数据中的每个字符串,从每个字符串的第一个SI字符开始检查,检查每个SI字符之后是否出现一个SO字符,若每个SI字符之后均出现一个SO字符,则该字符串正常,比如,字符串1:SI****SOSI#####SOSI****SO,字符串的每个SI字符之后均有SO字符,所以字符串1为正常;若字符串的某个SI字符之后没有出现SO字符,则该字符串异常,比如,字符串2:SI###SOSI*****SI###SO,字符串2的第二个SI字符之后没有出现SO字符,则该字符串异常。
又例如,由于SI字符和SO字符成对出现,可以累积记录第一数据中的每个字符串中SI字符和SO字符的出现次数,若SI字符和SO字符的出现次数为偶数,则该字符串正常,比如,上述字符串1中SI字符和SO字符的出现次数为6,则该字符串1正常,或者,若SI字符和SO字符的出现次数为奇数,则该字符串异常,比如,上述字符串2中SI字符和SO字符的出现次数为5,则该字符串2异常。
其中,检测结果用于指示被检测的字符串是否出现异常,例如,该检测结果为Y,表示字符串正常,检测结果为N,表示字符串异常;或者,检测结果为0,表示字符串正常,检测结果为1,表示字符串异常。检测结果的形式可以有多种,本发明中不以此为限。
步骤103、若检测结果指示字符串出现异常,则生成异常报告,异常报告中包括异常字符串对应的数据行号和数据特征。
在本实施例中,若该检测结果指示字符串出现异常,则异常字符串对应的数据行号和数据特征输出在异常报告中,服务器可以自动将该异常报告发送给运维人员,用户收到异常报告后可以进行相应的处理。例如,运维人员对该异常数据进行数据修复,运维人员修复完毕后,用户再次根据修复后的第一数据执行信件批处理生成正确的信件数据。
本发明实施例提供的数据处理方法,根据用户录入的批次号从数据源中获取第一数据,对第一数据的每个字符串的SI字符和SO字符进行配对检测,生成检测结果,若检测结果指示字符串出现异常,则生成包括异常字符串对应的数据行号和数据特征的异常报告,在海量数据的情况下,由服务器自动检测出异常字符串,通过异常报告输出异常字符串的位置,能够大大缩短人工比对时间,提高运维效率,节省运维成本。
图2为本发明另一实施例提供的一种数据处理方法的流程图,在图1所示实施例的基础上,步骤102“对第一数据的每个字符的SI字符和SO字符进行配对检测,生成检测结果”的一种可能的实现方式可以包括以下步骤:
步骤201、累积第一数据的每个字符中的SI字符和SO字符的出现次数。
在本实施例中,对于第一数据中的每个字符串,可以设置一个计数器来累积SI字符和SO字符的出现次数。
步骤202、若出现次数除以2的余数不等于0,则检测结果指示字符串异常。
在本实施例中,当每个计数器停止计数时,获取该计数器的值,将该计数器的值除以2,若余数为0,则该字符串中的SI字符和SO字符均配对,检测结果为字符串正常;若余数不为0,则该字符串中存在不配对的SI字符和SO字符,检测结果为字符串异常。
本发明实施例提供的数据处理方法,累积第一数据的每个字符中的SI字符和SO字符的出现次数,若出现次数除以2的余数不等于0,则检测结果指示字符串异常,可以快速检测出异常字符串,而且,该方法简单易行,提高了运维效率。
图3为本发明另一实施例提供的一种数据处理方法的流程图,本实施例涉及的是一种自动修复异常字符串的方法,如图3所示,在图1或图2所示实施例的基础上,步骤102之后,该方法还可以包括以下步骤:
步骤301、对第一数据进行逐行分析,获取第一数组,第一数组包括字符串序号、SI字符的位置、汉字字符串长度、空格位置、SO字符的位置和配对标识。
在本实施例中,当采用上述配对检测方法检测到第一数据中存在异常字符串时,服务器可以自动对第一数据进行修复。逐行扫描第一数据,提取每行字符串中的字符串序号、SI字符的位置、汉字字符串长度、空格位置、SO字符的位置和配对标识这些参数信息,将这些参数信息组成一个数组。
表1示出了第一数组的结构,如表1所示,第一数组中包括字符串序号、SI字符的位置、汉字字符串长度、空格位置、SO字符的位置和配对标识,其中,空格位置为0,表示该字符串中没有空格,SO字符位置为N/A表示该字符串中SI字符之后没有SO字符,配对标识为Y表示该字符串中的SI字符和SO字符均配对存在,配对标识为N表示该字符串中存在不配对的SI字符和SO字符。从表1中可知,字符串1为正常字符串,字符串2为异常字符串。
表1
步骤302、根据第一数组修复第一数据。
在本实施例中,如表1所示,数组中的字符串2为异常字符串,可以对该字符串2进行修复。比如,将字符串2中空格位置修改为SO字符。
如图4所示,步骤302“根据第一数组修复第一数据”的一种可能的实现方式可以包括以下步骤:
步骤401、对第一数组中每个字符串序号对应的配对标识进行检查。
在本实施例中,如表1所示,可以对每个字符串序号对应的配对标识进行检查,例如,若配对标识为Y,则该字符串正常,不需要修复处理;若配对标识为N,则该字符串异常,需要修复处理。
步骤402、当配对标识为配对失败标识时,则根据SI字符的位置获取配对失败标识对应的字符串中的第一个SI字符。
在本实施例中,如表1所示,当配对标识为N时,表示配对失败,对于该字符串获取第一个SI字符,如字符串2中,第一个SI字符的位置在第20字符位置处。
步骤403、若第一个SI字符之后存在空格,则将第一SI字符之后的第一个空格替换为SO字符,并根据汉字字符串长度将第一个空格之后的字符串向后移位,获取第二数据。
在本实施例中,正常情况下,录入的数据中不存在空格,当该字符串的第一个SI字符之后出现空格,则用SO字符将该空格替换。如表1所示,在字符串2中,SI字符之后的第37个字符处为空格,则将该空格采用SO字符替换,字符20位置处的SI字符配对,使得字符串2为正常字符,并根据汉子字符串长度将空格之后的字符串向后移动,例如,该字符串2的汉子字符串长度为16,将空格之后的字符串向后移动,超出16个字符之后的字符被移到下一行字符串的开始位置。
在本实施例中,当检查完字符串的第一个SI字符之后,再继续检查第二个SI字符之后是否有空格,若有,则将第二个SI之后的空格用SO字符替换,以此类推,直至检查完该字符串的每个SI字符为止。
可选地,在步骤403之后,该方法还包括:
步骤404、对第二数据进行逐行分析,更新第一数组。
在本实施例中,将某个字符串的第一个SI字符后面的空格用SO字符替换后,得到第二数据,逐行扫描第二数据,得到更新后的第一数组。
步骤405、根据更新后的第一数组修复第二数据。
在本实施例中,根据更新后的第一数组修复第二数据相当于在修复了一个SI字符之后,再次重复上述步骤401-403,对下一个SI字符进行配对修复,依次循环,直至将整个第一数据修复完整为止,修复之后的第一数据中不存在不配对的SI字符和SO字符。
本发明实施例提供的数据处理方法,对第一数据进行逐行分析,获取第一数组,对第一数组中每个字符串序号对应的配对标识进行检查,当配对标识为配对失败标识时,则根据SI字符的位置获取配对失败标识对应的字符串中的第一个SI字符,若第一个SI字符之后存在空格,则将第一SI字符之后的第一个空格替换为SO字符,并根据汉字字符串长度将第一个空格之后的字符串向后移位,获取第二数据,对第二数据进行逐行扫描,更新第一数组,根据更新后的第一数组修复第二数据,可以自动修复异常数据,提高运维效率和可靠性。
图5为本发明再一实施例提供的一种数据处理方法的流程图,本实施例涉及的是另一种自动修复异常字符串的方法,如图5所示,在图1或图2所示实施例的基础上,步骤102之后,该方法还可以包括以下步骤:
步骤501、根据检测结果获取第三数据,第三数据包括异常字符串。
在本实施例中,根据检测结果,将出现异常的字符串按行输出作为第三数据。与图3所示实施例不同的是,图3所示实施例中是对整个第一数据进行扫描修复,本实施例中仅是对第一数据中的异常字符串进行扫描修复。
步骤502、对第三数据进行逐行分析,获取第二数组,第二数组包括字符串序号、SI字符的位置、汉字字符串长度和空格位置。
在本实施例中,逐行扫描第三数据,提取每行字符串中的字符串序号、SI字符的位置、汉字字符串长度和空格位置这些参数信息,将这些参数信息组成第二数组,其中,字符串序号为字符串在第一数据中的行号。
表2示出了第二数组的结构,如表2所示,第二数组中包括字符串序号、SI字符的位置、汉字字符串长度和空格位置。其中,字符串1和字符串2均为异常字符串。
表2
步骤503、根据第二数组修复第三数据。
在本实施例中,可以根据第二数组对每个字符串进行修复,比如,将字符串1和字符串5中的空格位置修改为SO字符。
如图6所示,步骤503“根据第二数组修复第三数据”的一种可能的实现方式可以包括一下步骤:
步骤601、根据第二数组中SI字符的位置,获取第三数据的每个字符串中的SI字符。
在本实施例中,如表2所示,根据SI字符的位置确定每个字符串中的SI字符的位置,如字符串1中,SI字符的位置在第5个字符位置处,字符串5中,SI字符的位置在第20字符位置处。
步骤602、若SI字符之后存在空格,则将SI字符之后的第一个空格替换为SO字符,并根据汉字字符串长度将第一个空格之后的字符串向后移位。
在本实施例中,正常情况下,录入的数据中不存在空格,当该字符串的SI字符之后出现空格,则用SO字符将该空格替换。如表2所示,在字符串1中,SI字符之后的第16个字符处为空格,则将该空格采用SO字符替换,在字符串5中,SI字符之后的第37个字符处为空格,则将该空格采用SO字符替换,使得字符串1和5为正常字符,并根据汉子字符串长度将空格之后的字符串向后移动,例如,该字符串5的汉子字符串长度为16,将空格之后的字符串向后移动,超出16个字符之后的字符被移到下一行字符串的开始位置,这里的下一行字符串不是第三数据中的下一行的字符串,而是第一数据中的下一行字符串,例如,将字符串1的空格之后的字符串向后移动,多出来的字符串是移动到第一数据的字符串2的开始位置,将字符串5的空格之后的字符串向后移动,多出来的字符串是移动到第一数据的字符串6的开始位置。
在本实施例中,从每个字符串的第一个SI字符开始检查,当检查完字符串的第一个SI字符之后,再继续检查第二个SI字符之后是否有空格,若有,则将第二个SI之后的空格用SO字符替换,以此类推,直至检查完该字符串的每个SI字符为止。
本发明实施例提供的数据处理方法,根据检测结果获取第三数据,第三数据包括异常字符串,对第三数据进行逐行分析,获取第二数组,根据第二数组中SI字符的位置,获取第三数据的每个字符串中的SI字符,若SI字符之后存在空格,则将SI字符之后的第一个空格替换为SO字符,并根据汉字字符串长度将第一个空格之后的字符串向后移位,可以对检测到的异常字符串自动修复,而且,仅扫描修复异常字符串,运维效率更高。
图7为本发明一实施例提供的一种数据处理装置的框图,如图7所示,该装置包括:
第一获取模块11用于根据用户录入的批次号从数据源中获取第一数据;
检测模块12用于对第一数据的每个字符串的移入SI字符和移出SO字符进行配对检测,生成检测结果,检测结果用于指示字符串是否出现异常;
生成模块13用于若检测结果指示字符串出现异常,则生成异常报告,异常报告中包括异常字符串对应的数据行号和数据特征。
本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
可选地,检测模块12具体用于累积第一数据的每个字符中的SI字符和SO字符的出现次数;若出现次数除以2的余数不等于0,则检测结果指示字符串异常。
本实施例的装置,可以用于执行图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图8为本发明另一实施例提供的一种数据处理装置的框图,如图8所示,在图7所示实施例的基础上,该装置还包括:
第一分析模块14用于对第一数据进行逐行分析,获取第一数组,第一数组包括字符串序号、SI字符的位置、汉字字符串长度、空格位置、SO字符的位置和配对标识;
第一修复模块15用于根据第一数组修复第一数据。
本实施例的装置,可以用于执行图3所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
可选地,第一修复模块15具体用于对第一数组中每个字符串序号对应的配对标识进行检查;当配对标识为配对失败标识时,则根据SI字符的位置获取配对失败标识对应的字符串中的第一个SI字符;若第一个SI字符之后存在空格,则将第一SI字符之后的第一个空格替换为SO字符,并根据汉字字符串长度将第一个空格之后的字符串向后移位,获取第二数据。
可选地,第一分析模块14还用于对第二数据进行逐行分析,更新第一数组;第一修复模块15还用于根据更新后的第一数组修复第二数据。
本实施例的装置,可以用于执行图4所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图9为本发明另一实施例提供的一种数据处理装置的框图,如图9所示,在图7所示实施例的基础上,该装置还包括:
第二获取模块16用于根据检测结果获取第三数据,第三数据包括异常字符串;
第二分析模块17用于对第三数据进行逐行分析,获取第二数组,第二数组包括字符串序号、SI字符的位置、汉字字符串长度和空格位置;
第二修复模块18用于根据第二数组修复第三数据。
本实施例的装置,可以用于执行图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
可选地,第二修复模块18具体用于根据第二数组中的SI字符的位置,获取第三数据的每个字符串中的SI字符;若SI字符之后存在空格,则将SI字符之后的第一个空格替换为SO字符,并根据汉字字符串长度将第一个空格之后的字符串向后移位。
本实施例的装置,可以用于执行图6所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本申请实施例还提供一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现图1-图6任一项实施例所述数据处理方法的步骤。
图10为本发明一实施例提供的一种终端的框图,如图10所示,该设备包括:
处理器21;以及
存储器22,用于存储处理器21的可执行指令;
其中,处理器21配置为通过执行可执行指令来执行图1-图6任一项实施例所述数据处理方法的步骤。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(random access memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
根据用户录入的批次号从数据源中获取第一数据;
对所述第一数据的每个字符串的移入SI字符和移出SO字符进行配对检测,生成检测结果,所述检测结果用于指示字符串是否出现异常;
若所述检测结果指示字符串出现异常,则生成异常报告,所述异常报告中包括异常字符串对应的数据行号和数据特征。
2.根据权利要求1所述的方法,其特征在于,所述对所述第一数据的每个字符的移入SI字符和移出SO字符进行配对检测,生成检测结果,包括:
累积所述第一数据的每个字符中的SI字符和SO字符的出现次数;
若所述出现次数除以2的余数不等于0,则所述检测结果指示字符串异常。
3.根据权利要求1或2所述的方法,其特征在于,所述对所述第一数据的每个字符的移入SI字符和移出SO字符进行配对检测,生成检测结果之后,所述方法还包括:
对所述第一数据进行逐行分析,获取第一数组,所述第一数组包括字符串序号、SI字符的位置、汉字字符串长度、所述空格位置、SO字符的位置和配对标识;
根据所述第一数组修复所述第一数据。
4.根据权利3所述的方法,其特征在于,所述根据所述第一数组修复所述第一数据,包括:
对所述第一数组中每个所述字符串序号对应的配对标识进行检查;
当所述配对标识为配对失败标识时,则根据所述SI字符的位置获取所述配对失败标识对应的字符串中的第一个SI字符;
若所述第一个SI字符之后存在空格,则将所述第一SI字符之后的第一个空格替换为SO字符,并根据所述汉字字符串长度将所述第一个空格之后的字符串向后移位,获取第二数据。
5.根据权利要求4所述的方法,其特征在于,所述获取第二数据之后,所述方法还包括:
对所述第二数据进行逐行分析,更新所述第一数组;
根据更新后的第一数组修复所述第二数据。
6.根据权利要求1或2所述的方法,其特征在于,所述对所述第一数据的每个字符的移入SI字符和移出SO字符进行配对检测,生成检测结果之后,所述方法还包括:
根据所述检测结果获取第三数据,所述第三数据包括异常字符串;
对所述第三数据进行逐行分析,获取第二数组,所述第二数组包括字符串序号、SI字符的位置、汉字字符串长度和空格位置;
根据所述第二数组修复所述第三数据。
7.根据权利要求6所述的方法,其特征在于,所述根据所述第二数组修复所述第三数据,包括:
根据所述第二数组中的所述SI字符的位置,获取所述第三数据的每个字符串中的SI字符;
若所述SI字符之后存在空格,则将所述SI字符之后的第一个空格替换为SO字符,并根据所述汉字字符串长度将所述第一个空格之后的字符串向后移位。
8.一种数据处理装置,其特征在于,包括:
第一获取模块,用于根据用户录入的批次号从数据源中获取第一数据;
检测模块,用于对所述第一数据的每个字符串的移入SI字符和移出SO字符进行配对检测,生成检测结果,所述检测结果用于指示字符串是否出现异常;
生成模块,用于若所述检测结果指示字符串出现异常,则生成异常报告,所述异常报告中包括异常字符串对应的数据行号和数据特征。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1~7任一项所述数据处理方法的步骤。
10.一种终端,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为通过执行所述可执行指令来执行权利要求1~7任一项所述数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711288801.2A CN107967245A (zh) | 2017-12-07 | 2017-12-07 | 数据处理方法、装置、终端和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711288801.2A CN107967245A (zh) | 2017-12-07 | 2017-12-07 | 数据处理方法、装置、终端和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107967245A true CN107967245A (zh) | 2018-04-27 |
Family
ID=61999582
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711288801.2A Pending CN107967245A (zh) | 2017-12-07 | 2017-12-07 | 数据处理方法、装置、终端和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107967245A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192217A (zh) * | 2006-11-28 | 2008-06-04 | 阿里巴巴公司 | 消除超文本标记语言中有害代码的方法 |
CN101751420A (zh) * | 2008-12-10 | 2010-06-23 | 华中科技大学 | 语义脉络文档查询方法 |
CN103823903A (zh) * | 2014-03-18 | 2014-05-28 | 联想(北京)有限公司 | 数据处理方法及装置 |
CN106681930A (zh) * | 2017-01-23 | 2017-05-17 | 北京思特奇信息技术股份有限公司 | 分布式自动检测应用运行异常方法及系统 |
US9715508B1 (en) * | 2016-03-28 | 2017-07-25 | Cogniac, Corp. | Dynamic adaptation of feature identification and annotation |
-
2017
- 2017-12-07 CN CN201711288801.2A patent/CN107967245A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192217A (zh) * | 2006-11-28 | 2008-06-04 | 阿里巴巴公司 | 消除超文本标记语言中有害代码的方法 |
CN101751420A (zh) * | 2008-12-10 | 2010-06-23 | 华中科技大学 | 语义脉络文档查询方法 |
CN103823903A (zh) * | 2014-03-18 | 2014-05-28 | 联想(北京)有限公司 | 数据处理方法及装置 |
US9715508B1 (en) * | 2016-03-28 | 2017-07-25 | Cogniac, Corp. | Dynamic adaptation of feature identification and annotation |
CN106681930A (zh) * | 2017-01-23 | 2017-05-17 | 北京思特奇信息技术股份有限公司 | 分布式自动检测应用运行异常方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107807982B (zh) | 一种异构数据库的一致性校验方法及装置 | |
US7324998B2 (en) | Document search methods and systems | |
CN105607960A (zh) | 文件系统目录树修复方法和装置 | |
CN106796585A (zh) | 条件验证规则 | |
CA3048356A1 (en) | Unstructured data parsing for structured information | |
CN107229694A (zh) | 一种基于大数据的数据信息一致性处理方法、系统及装置 | |
CN106250319A (zh) | 静态代码扫描结果处理方法和装置 | |
CN111881455A (zh) | 一种固件安全分析的方法及装置 | |
CN109857714A (zh) | 日志获取方法、装置、电子设备及计算机可读存储介质 | |
CN113780367A (zh) | 分类模型训练和数据分类方法、装置、电子设备 | |
CN110110320B (zh) | 自动合同审查方法、装置、介质以及电子设备 | |
CN112860957B (zh) | 一种定值单的核对方法、介质及系统 | |
US7434132B2 (en) | Method and system of configuring a software program | |
CN111861328B (zh) | 建立物流识别库的方法、物流轨迹查询更新方法及设备 | |
CN113159421A (zh) | 一种基于企业特征预测中标概率的方法及装置 | |
CN111126056B (zh) | 一种识别触发词的方法及装置 | |
CN112612810A (zh) | 慢sql语句识别方法及系统 | |
CN107967245A (zh) | 数据处理方法、装置、终端和存储介质 | |
CN111178037A (zh) | 重复缺陷报告识别方法、装置及电子设备 | |
CN114970490A (zh) | 一种文本标注数据的质检方法、装置、电子设备以及存储介质 | |
US20110145295A1 (en) | Representation of a set of numeric values in a computerized environment | |
CN113037521B (zh) | 识别通讯设备状态的方法、通讯系统及存储介质 | |
CN109560964B (zh) | 一种设备合规检查方法及装置 | |
CN113537349A (zh) | 大型主机硬件故障识别方法、装置、设备及存储介质 | |
CN112925874A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180427 |