一种针对检测仪器输出数据筛选提取的处理方法

文档序号:6424697阅读:153来源:国知局
专利名称:一种针对检测仪器输出数据筛选提取的处理方法
技术领域
本发明涉及一种数据分析处理技术,特别是涉及一种检测仪器输出数据筛选提取的处理方法。
背景技术
目前,检验检测领域中使用的检测仪器最终的检测结果通常会在用户终端生成PDF、TXT、XLS格式的电子文档,如果需要对这些检测结果进一步分析,则需要由人工将检验结果录入到关系型数据库中,实现检验结果的电子数据化,以供长期有效存储,并作为进一步数据分析的基础。当检测仪器众多并检测频繁时,由人工不断录入无法满足实现工作需要且极易发生人为录入错误而使后继续工作无法进行。因此需要通过一种数据处理方法,读出不同类型检测仪器输出的结果数据,并进行分析处理解析出有效的检测结果数据,最终存储到关系型数据库中。

发明内容
本发明的目的在于解决现有技术的不足,提供一种检测仪器输出数据的处理方法。为了实现这一目的,必须解决以下技术问题I.根据设备输出的结果格式,定义好提出数据的配置文件。因为设备众多,输出的检验结果也各式各样,所以建立配置文件描述需要提取数据的形式。并根据数据存取需求定义在配置文件中定义好输出格式,以供其它指令程序读入到关系数据库中。2.需要设计一种抽取数据的方法,将整个文件的文本抽取出来,并将文本从上到下,从左到右按设定的逻辑顺序进行解析,解析的过程是利用正则表达式的实现的。当文本解析到结尾时,所有需要的数据就都抽取出来了。本发明采取的技术方案是—种检测仪器输出数据的处理方法,步骤如下I)根据检测仪器输出数据的格式,定义逻辑配置文件,并保存为XML格式文件;2)读取逻辑配置文件,将配置文件编译为执行逻辑规则集合的解析引擎;3)将检测仪器输出的数据文件读入内存,启动解析引擎,执行解析过程;4)输出解析结果。进一步,步骤2所述的将配置文件编译为执行逻辑规则集合的解析引擎的编译过程包括如下步骤A)根据配置文件针对的检测仪器输出数据类型,生成根规则;B)判断是否需要生成叶规则,是则在根规则下生成叶规则,叶规则的类型为控制结构规则、文本匹配规则、结果输出规则中的任意一种规则;否则结束编译过程。C)判断是否在步骤B生成的叶规则下继续生成叶规则,是则在叶规则下生成叶规贝U,叶规则的类型为控制结构规则、文本匹配规则、结果输出规则中的任意一种规则;否则执行步骤B,并且将叶规则定义为叶子规则。
进一步,步骤3所述的解析过程,包括如下步骤A)顺序读取检测输出数据,判断是否是表头标示,如果是则执行步骤B,否则继续步骤A ;B)顺序读取检测输出数据,判断是是含分隔符标示,如果是则执行步骤C,否则继续步骤B ; C)顺序读取检测输出数据,判断是否是表尾标示,如果是则结束解析过程,否则执行步骤D ;D)判断是否是需要的数据项标示,如果是则执行步骤E,否则执行步骤C ;E)提取数据项作为解析结果。进一步,步骤I所述的定义逻辑配置文件的方法如下A)定义判断检验数据的表头标示;根据表头标示,定义控制结构规则,在控制结构规则内定义文本匹配规则;B)定义通过循环控制实现逐条检验结果数据取出根据检验结果数据位置,定义控制结构规则,在控制结构规则内定义文本匹配规则;C)定义判断检验数据的结束标示根据结束标示,定义控制结构规则,在控制结构规则内定义文本匹配规则;D)定义筛选输出的数据根据数据位置,定义控制结构规则,在控制结构规则内定义文本匹配规则和结果输出规则。本发明的有益效果在于使用本发明所述的方法,可以将不同设备的检验结果通过逻辑模板设置的方式自动转为关系性电子数据,且不需要再做程序设计,有利检验结果数据的电子化管理,提高了检验结果的利用率,使检验人员从人工录入检验结果的繁琐事务性劳动中解脱出来,提高了工作效率。


图I是本发明所涉及的数据筛选提取处理流程示意2是检测仪器输出检验数据格式的参考样例图3是根据xml配置文件解析出来的结果其中I、检测仪器输出的检验数据的表头2、检测仪器输出的5条检验结果数据3、检验仪器输出的检验数据的结束标示
具体实施例方式检测仪器输出数据格式如图2所示,进行数据处理最终得到图3的输出结果的方法如下I、根据数据格式编辑逻辑配置文件,以图2检验输出数据为例,最后生成逻辑配置文件的格式如下所示行01:〈if>
行02 <conditions>//注释判断表头该判断工作被放在if规则的分支条件中。regex是一个基于正则表达式技术的分支条件;如果正则表达式匹配成功,则执行if■规则的then子规则集。//行 03 〈regex pattern = " RetTime\s*Type\s*Area\s*Amt/Area\s*Amount\s*Grp\s*Name" />行 04 : 〈regex pattern = " ( :-*\|)+_*〃 />行05 !〈/conditions〉行06 :〈then>//注释如果判断条件满足,while规则表示重复执行该规则的子规则集。如果在whi Ie的子规则集的执行过程中遇到break规则,则while规则执行结束。因为步骤3是一个反复执行的步骤,因此这里用while规则来描述。Illl行07 〈while〉行08 :<if>行09 :〈conditions〉//注释判断是否到达检验结果表尾。如果是表尾,则执行〈break〉规则跳出循环。//行 10:〈regex pattern =" \s*Totals\s*: " />
行11 :〈/conditions〉行12 :〈then〉行13 :〈break/〉行14 :〈/then〉行15 : </if>行I6
<regexpattern = " ( ’ pi,\d{2}\. \d{3})\s+( ’ p2,[~\s\d]*) \s+( ’ p3,-1 - \d+( : \. \d+) I [+_] \d\.
+ [eE] [+_]\d+)\s+( ’p4’-|_ \d+( : \. \d+) \d\.
+ [eE] [+-]\d+)\s+( ’ p5’-|- \d+( :\.\d+) [+-] \d\.
+ [eE] [+-]\d+)\s+( ,p6,[~\s]+) " >//注释取一条数据记录,执行正则表达式的匹配。如果匹配成功,则表示找到一条检测数据。此时,将执行regex规则的子规则集。该子规则集用来在添加输出结果。//行17 :〈xmlnode name = " Signal " >//注释xmlnode规则用于向输出结果中添加xml节点。因为我们提取的数据最终都是保存在一个个的xml节点中的,因此需要在适当的位置使用xmlnode规则来生成节点。//行 18 〈xmlnode name =" Amount" >行19 :〈xmlGroup saveGroup = " p5" />//注释xmlGroup 规则的作用是取最近一次匹配的正则表达式的结果。其中P6是正则表达式分组的名称。正则表达式执行引擎会在匹配成功时会按分组提取文本。另外,xmlGroup规则会将匹配结果输出到当前xml节点的内容中。//行20 〈/xmlnode〉行 21 :〈xmlnode name =" Name" >行22 :〈xmlGroup saveGroup = " p6" />行23 〈/xmlnode〉
行24 〈/xmlnode〉行25 〈/regex〉行26: 〈/while〉行27 〈/then〉
行28 </if>配置文件生成的主要过程是,第(I)步定位到检验数据的表头1,根据图2中RetTime—行,定义为配置文件的中行03、行04;第(2)步通过循环控制实现逐条检验结果数据2取出定义,定义为配置文件的中行16到行25 ;第(3)步为判断检验数据的结束标示3,定义为配置文件的行08到行15 ;第(4)步为定义筛选输出的数据,本例中需要筛选输出的数据有Amount、Name,定义为配置文件的行17到行24。配置文件用xml生成,下表中表示部分定义规则。
权利要求
1.一种针对检测仪器输出数据筛选提取的处理方法,步骤如下 1)根据检测仪器输出数据的格式,定义逻辑配置文件,并保存为XML格式文件; 2)读取逻辑配置文件,将配置文件编译为执行逻辑规则集合的解析引擎; 3)将检测仪器输出的数据文件读入内存,启动解析引擎,执行解析过程; 4)输出解析結果。
2.根据权利要求I所述的处理方法,其特征在于步骤2所述的将配置文件编译为执行逻辑规则集合的解析引擎的编译过程包括如下步骤 A)根据配置文件针对的检测仪器输出数据类型,生成根规则; B)判断是否需要生成叶规则,是则在根规则下生成叶规则,叶规则的类型为控制结构规则、文本匹配规则、结果输出规则中的任意一种规则;否则结束编译过程。
C)判断是否在步骤B生成的叶规则下继续生成叶规则,是则在叶规则下生成叶规则,叶规则的类型为控制结构规则、文本匹配规则、结果输出规则中的任意一种规则;否则执行步骤B,并且将叶规则定义为叶子规则。
3.根据权利要求I或2任意一项所述的处理方法,其特征在于步骤3所述的解析过程,包括如下步骤 A)顺序读取检测输出数据,判断是否是表头标示,如果是则执行步骤B,否则继续步骤A ; B)顺序读取检测输出数据,判断是是含分隔符标示,如果是则执行步骤C,否则继续步骤B; C)顺序读取检测输出数据,判断是否是表尾标示,如果是则结束解析过程,否则执行步骤D; D)判断是否是需要的数据项标示,如果是则执行步骤E,否则执行步骤C; E)提取数据项作为解析結果。
4.根据权利要求1-3任意一项所述的处理方法,其特征在于步骤I所述的定义逻辑配置文件的方法如下 A)定义判断检验数据的表头标示;根据表头标示,定义控制结构规则,在控制结构规则内定义文本匹配规则; B)定义通过循环控制实现逐条检验结果数据取出根据检验结果数据位置,定义控制结构规则,在控制结构规则内定义文本匹配规则; C)定义判断检验数据的结束标示根据结束标示,定义控制结构规则,在控制结构规则内定义文本匹配规则; D)定义筛选输出的数据根据数据位置,定义控制结构规则,在控制结构规则内定义文本匹配规则和结果输出规则。
全文摘要
本发明公开一种针对检测仪器输出数据筛选提取的处理方法,包括步骤根据检验结果的格式设置逻辑配制文件;加载逻辑配制文件;读取检验结果原始文件;根据逻辑配制文件对检验结果的原始文本进行逻辑解析;根据逻辑配置文件解析定义的输出格式输出数据。按照本发明的方法,用户只需要设置或修改逻辑配制文件,即可对不同检验设备输出数据进行筛选提取,不需要进行额外的程序开发,从而实现了不同设备输出自身格式数据文件的统一数据管理,提高了数据有利用率和检验人员的工作效率。
文档编号G06F17/30GK102799584SQ201110135008
公开日2012年11月28日 申请日期2011年5月24日 优先权日2011年5月24日
发明者王美, 汪先富, 吴梅山, 丰苏, 黄国明, 沈晓, 付文新, 徐国志, 周琳琳, 边涛 申请人:中华人民共和国天津出入境检验检疫局, 天津市基弘电子技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1