CN102799584A - 一种针对检测仪器输出数据筛选提取的处理方法 - Google Patents
一种针对检测仪器输出数据筛选提取的处理方法 Download PDFInfo
- Publication number
- CN102799584A CN102799584A CN2011101350085A CN201110135008A CN102799584A CN 102799584 A CN102799584 A CN 102799584A CN 2011101350085 A CN2011101350085 A CN 2011101350085A CN 201110135008 A CN201110135008 A CN 201110135008A CN 102799584 A CN102799584 A CN 102799584A
- Authority
- CN
- China
- Prior art keywords
- rule
- definition
- data
- control structure
- configuration file
- 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
Images
Abstract
本发明公开一种针对检测仪器输出数据筛选提取的处理方法,包括步骤:根据检验结果的格式设置逻辑配制文件;加载逻辑配制文件;读取检验结果原始文件;根据逻辑配制文件对检验结果的原始文本进行逻辑解析;根据逻辑配置文件解析定义的输出格式输出数据。按照本发明的方法,用户只需要设置或修改逻辑配制文件,即可对不同检验设备输出数据进行筛选提取,不需要进行额外的程序开发,从而实现了不同设备输出自身格式数据文件的统一数据管理,提高了数据有利用率和检验人员的工作效率。
Description
技术领域
本发明涉及一种数据分析处理技术,特别是涉及一种检测仪器输出数据筛选提取的处理方法。
背景技术
目前,检验检测领域中使用的检测仪器最终的检测结果通常会在用户终端生成PDF、TXT、XLS格式的电子文档,如果需要对这些检测结果进一步分析,则需要由人工将检验结果录入到关系型数据库中,实现检验结果的电子数据化,以供长期有效存储,并作为进一步数据分析的基础。当检测仪器众多并检测频繁时,由人工不断录入无法满足实现工作需要且极易发生人为录入错误而使后继续工作无法进行。因此需要通过一种数据处理方法,读出不同类型检测仪器输出的结果数据,并进行分析处理解析出有效的检测结果数据,最终存储到关系型数据库中。
发明内容
本发明的目的在于解决现有技术的不足,提供一种检测仪器输出数据的处理方法。为了实现这一目的,必须解决以下技术问题:
1.根据设备输出的结果格式,定义好提出数据的配置文件。因为设备众多,输出的检验结果也各式各样,所以建立配置文件描述需要提取数据的形式。并根据数据存取需求定义在配置文件中定义好输出格式,以供其它指令程序读入到关系数据库中。
2.需要设计一种抽取数据的方法,将整个文件的文本抽取出来,并将文本从上到下,从左到右按设定的逻辑顺序进行解析,解析的过程是利用正则表达式的实现的。当文本解析到结尾时,所有需要的数据就都抽取出来了。
本发明采取的技术方案是:
一种检测仪器输出数据的处理方法,步骤如下:
1)根据检测仪器输出数据的格式,定义逻辑配置文件,并保存为XML格式文件;
2)读取逻辑配置文件,将配置文件编译为执行逻辑规则集合的解析引擎;
3)将检测仪器输出的数据文件读入内存,启动解析引擎,执行解析过程;
4)输出解析结果。
进一步,步骤2所述的将配置文件编译为执行逻辑规则集合的解析引擎的编译过程包括如下步骤:
A)根据配置文件针对的检测仪器输出数据类型,生成根规则;
B)判断是否需要生成叶规则,是则在根规则下生成叶规则,叶规则的类型为控制结构规则、文本匹配规则、结果输出规则中的任意一种规则;否则结束编译过程。
C)判断是否在步骤B生成的叶规则下继续生成叶规则,是则在叶规则下生成叶规则,叶规则的类型为控制结构规则、文本匹配规则、结果输出规则中的任意一种规则;否则执行步骤B,并且将叶规则定义为叶子规则。
进一步,步骤3所述的解析过程,包括如下步骤:
A)顺序读取检测输出数据,判断是否是表头标示,如果是则执行步骤B,否则继续步骤A;
B)顺序读取检测输出数据,判断是是含分隔符标示,如果是则执行步骤C,否则继续步骤B;
C)顺序读取检测输出数据,判断是否是表尾标示,如果是则结束解析过程,否则执行步骤D;
D)判断是否是需要的数据项标示,如果是则执行步骤E,否则执行步骤C;
E)提取数据项作为解析结果。
进一步,步骤1所述的定义逻辑配置文件的方法如下:
A)定义判断检验数据的表头标示;根据表头标示,定义控制结构规则,在控制结构规则内定义文本匹配规则;
B)定义通过循环控制实现逐条检验结果数据取出:根据检验结果数据位置,定义控制结构规则,在控制结构规则内定义文本匹配规则;
C)定义判断检验数据的结束标示:根据结束标示,定义控制结构规则,在控制结构规则内定义文本匹配规则;
D)定义筛选输出的数据:根据数据位置,定义控制结构规则,在控制结构规则内定义文本匹配规则和结果输出规则。
本发明的有益效果在于:
使用本发明所述的方法,可以将不同设备的检验结果通过逻辑模板设置的方式自动转为关系性电子数据,且不需要再做程序设计,有利检验结果数据的电子化管理,提高了检验结果的利用率,使检验人员从人工录入检验结果的繁琐事务性劳动中解脱出来,提高了工作效率。
附图说明
图1是本发明所涉及的数据筛选提取处理流程示意图
图2是检测仪器输出检验数据格式的参考样例
图3是根据xml配置文件解析出来的结果
其中:
1、检测仪器输出的检验数据的表头
2、检测仪器输出的5条检验结果数据
3、检验仪器输出的检验数据的结束标示
具体实施方式
检测仪器输出数据格式如图2所示,进行数据处理最终得到图3的输出结果的方法如下:
1、根据数据格式编辑逻辑配置文件,以图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 le的子规则集的执行过程中遇到break规则,则while规则执行结束。因为步骤3是一个反复执行的步骤,因此这里用while规则来描述。////
行07: <while>
行08: <if>
行09: <conditions>//注释:判断是否到达检验结果表尾。如果是表尾,则执行<break>规则跳出循环。//
行10: <regex pattern=″\s*Totals\s*:″/>
行11: </conditions>
行12: <then>
行13: <break/>
行14: </then>
行15: </if>
行1 6 : <regexpattern=″(?’p1’\d{2}\.\d{3})\s+(?’p2’[^\s\d]*)\s+(?’p3’-|-?\d+(?:\.\d+)?|[+-]?\d\.[0-9]+[eE][+-]\d+)\s+(?’p4’-|-?\d+(?:\.\d+)?|[+-]?\d\.[0-9]+[eE][+-]\d+)\s+(?’p5’-|-?\d+(?:\.\d+)?|[+-]?\d\.[0-9]+[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>
配置文件生成的主要过程是,第(1)步定位到检验数据的表头1,根据图2中RetTime一行,定义为配置文件的中行03、行04;第(2)步通过循环控制实现逐条检验结果数据2取出定义,定义为配置文件的中行16到行25;第(3)步为判断检验数据的结束标示3,定义为配置文件的行08到行15;第(4)步为定义筛选输出的数据,本例中需要筛选输出的数据有Amount、Name,定义为配置文件的行17到行24。
配置文件用xml生成,下表中表示部分定义规则。
2、加载xml配置文件至内存中。该步骤将第一步编辑的配置文件加载到内存中,并将其转换为解析规则对象集合(实际应用中可以为面向对象语言根据解析规则生成的对象集合),以备解析检验结果文件,为提高解析速度也可以将配置文件编译生成编译文件以备解析检验结果。
3、读取检验仪器原始数据,将检验仪器的报告文件中的文本提取出来(可以是txt、pdf格式),供解析指令进行文本解析。
4、根据逻辑配制文件对检验结果的原始文本进行逻辑解析。
在实际应用中,可以利用面向对象语言构造一个有解析功能的类去完成解析过程,这里我们使用解析引擎来表述,解析引擎是指若干规则是按照树型结构的方式组织在一起的,即:每一个配置文件有且仅有一个根规则,根规则下包含若干子规则,子规则下还可以包含子规则,没有包含子规则的规则称作叶子规则。
解析引擎对解析规则的执行是按照树型结构的深度遍历方式进行的,每个规则都完成各自所需要负责完成的解析工作。总得来说,从规则的实现功能方面来分,解析规则主要有三类:控制结构规则、文本匹配规则、结果输出规则。控制结构规则完成了对顺序、分支与循环的解析过程的定义。再结合“树型结构”的遍历执行顺序,就构成了对整个解析过程的描述。遵循着这个描述,我们可以完整地构建出对一个文档的解析步骤,从而得到最终解析出来的结果。
5、解析引擎最后输出一个解析结果文档,如图3,该文档以xml形式存于计算机内存中或根据需要存放在的硬盘上,以供后续指令调用使用。
Claims (4)
1.一种针对检测仪器输出数据筛选提取的处理方法,步骤如下:
1)根据检测仪器输出数据的格式,定义逻辑配置文件,并保存为XML格式文件;
2)读取逻辑配置文件,将配置文件编译为执行逻辑规则集合的解析引擎;
3)将检测仪器输出的数据文件读入内存,启动解析引擎,执行解析过程;
4)输出解析结果。
2.根据权利要求1所述的处理方法,其特征在于:步骤2所述的将配置文件编译为执行逻辑规则集合的解析引擎的编译过程包括如下步骤:
A)根据配置文件针对的检测仪器输出数据类型,生成根规则;
B)判断是否需要生成叶规则,是则在根规则下生成叶规则,叶规则的类型为控制结构规则、文本匹配规则、结果输出规则中的任意一种规则;否则结束编译过程。
C)判断是否在步骤B生成的叶规则下继续生成叶规则,是则在叶规则下生成叶规则,叶规则的类型为控制结构规则、文本匹配规则、结果输出规则中的任意一种规则;否则执行步骤B,并且将叶规则定义为叶子规则。
3.根据权利要求1或2任意一项所述的处理方法,其特征在于:步骤3所述的解析过程,包括如下步骤:
A)顺序读取检测输出数据,判断是否是表头标示,如果是则执行步骤B,否则继续步骤A;
B)顺序读取检测输出数据,判断是是含分隔符标示,如果是则执行步骤C,否则继续步骤B;
C)顺序读取检测输出数据,判断是否是表尾标示,如果是则结束解析过程,否则执行步骤D;
D)判断是否是需要的数据项标示,如果是则执行步骤E,否则执行步骤C;
E)提取数据项作为解析结果。
4.根据权利要求1-3任意一项所述的处理方法,其特征在于:步骤1所述的定义逻辑配置文件的方法如下:
A)定义判断检验数据的表头标示;根据表头标示,定义控制结构规则,在控制结构规则内定义文本匹配规则;
B)定义通过循环控制实现逐条检验结果数据取出:根据检验结果数据位置,定义控制结构规则,在控制结构规则内定义文本匹配规则;
C)定义判断检验数据的结束标示:根据结束标示,定义控制结构规则,在控制结构规则内定义文本匹配规则;
D)定义筛选输出的数据:根据数据位置,定义控制结构规则,在控制结构规则内定义文本匹配规则和结果输出规则。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101350085A CN102799584A (zh) | 2011-05-24 | 2011-05-24 | 一种针对检测仪器输出数据筛选提取的处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101350085A CN102799584A (zh) | 2011-05-24 | 2011-05-24 | 一种针对检测仪器输出数据筛选提取的处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102799584A true CN102799584A (zh) | 2012-11-28 |
Family
ID=47198696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011101350085A Pending CN102799584A (zh) | 2011-05-24 | 2011-05-24 | 一种针对检测仪器输出数据筛选提取的处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102799584A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317601A (zh) * | 2014-10-31 | 2015-01-28 | 北京思特奇信息技术股份有限公司 | 一种文件接口开发方法及系统 |
CN105868311A (zh) * | 2016-03-25 | 2016-08-17 | 浪潮通信信息系统有限公司 | 一种数据解析的方法和装置 |
CN106845467A (zh) * | 2016-12-14 | 2017-06-13 | 北京航天测控技术有限公司 | 基于光学字符识别技术的航空维修工卡工作内容识别方法 |
CN108804106A (zh) * | 2018-04-28 | 2018-11-13 | 北京机械设备研究所 | 一种基于配置表管理的数据解析软件优化方法 |
CN110321531A (zh) * | 2018-03-30 | 2019-10-11 | 中国石化销售有限公司 | 实验室仪器信息管理系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101055578A (zh) * | 2006-04-12 | 2007-10-17 | 龙搜(北京)科技有限公司 | 基于规则的文档内容挖掘器 |
CN101464879A (zh) * | 2008-11-28 | 2009-06-24 | 中国地质大学(武汉) | 基于规则的动态目录实现方法及系统 |
CN101504654A (zh) * | 2009-03-17 | 2009-08-12 | 东南大学 | 一种实现数据库模式自动匹配的方法 |
CN101765842A (zh) * | 2007-07-30 | 2010-06-30 | 阿尔卡特朗讯公司 | 用于xml策略匹配的方法和装置 |
-
2011
- 2011-05-24 CN CN2011101350085A patent/CN102799584A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101055578A (zh) * | 2006-04-12 | 2007-10-17 | 龙搜(北京)科技有限公司 | 基于规则的文档内容挖掘器 |
CN101765842A (zh) * | 2007-07-30 | 2010-06-30 | 阿尔卡特朗讯公司 | 用于xml策略匹配的方法和装置 |
CN101464879A (zh) * | 2008-11-28 | 2009-06-24 | 中国地质大学(武汉) | 基于规则的动态目录实现方法及系统 |
CN101504654A (zh) * | 2009-03-17 | 2009-08-12 | 东南大学 | 一种实现数据库模式自动匹配的方法 |
Non-Patent Citations (2)
Title |
---|
李榕,丁岳伟,徐骁骏: "基于XML的动态数据报表生成技术", 《微计算机信息》 * |
胡加顺: "Web报表引擎", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317601A (zh) * | 2014-10-31 | 2015-01-28 | 北京思特奇信息技术股份有限公司 | 一种文件接口开发方法及系统 |
CN104317601B (zh) * | 2014-10-31 | 2017-10-17 | 北京思特奇信息技术股份有限公司 | 一种文件接口开发方法及系统 |
CN105868311A (zh) * | 2016-03-25 | 2016-08-17 | 浪潮通信信息系统有限公司 | 一种数据解析的方法和装置 |
CN106845467A (zh) * | 2016-12-14 | 2017-06-13 | 北京航天测控技术有限公司 | 基于光学字符识别技术的航空维修工卡工作内容识别方法 |
CN110321531A (zh) * | 2018-03-30 | 2019-10-11 | 中国石化销售有限公司 | 实验室仪器信息管理系统 |
CN108804106A (zh) * | 2018-04-28 | 2018-11-13 | 北京机械设备研究所 | 一种基于配置表管理的数据解析软件优化方法 |
CN108804106B (zh) * | 2018-04-28 | 2022-04-19 | 北京机械设备研究所 | 一种基于配置表管理的数据解析软件优化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10169337B2 (en) | Converting data into natural language form | |
JP4427500B2 (ja) | 意味解析装置、意味解析方法および意味解析プログラム | |
Adelfio et al. | Schema extraction for tabular data on the web | |
US9317552B2 (en) | Reusing existing query plans in a database system | |
van den Burg et al. | Wrangling messy CSV files by detecting row and type patterns | |
US8775158B2 (en) | Data processing device, data processing method, and data processing program | |
JP2010518518A (ja) | ウェブ・サービス定義の品質を事前評価および精密化するための方法、システム、およびコンピュータ読み取り可能媒体 | |
US11651014B2 (en) | Source code retrieval | |
Meuschke et al. | Improving academic plagiarism detection for STEM documents by analyzing mathematical content and citations | |
CN102799584A (zh) | 一种针对检测仪器输出数据筛选提取的处理方法 | |
CN102945244A (zh) | 基于句号特征字串的中文网页重复文档检测和过滤方法 | |
US20090307186A1 (en) | Method and Apparatus for Database Management and Program | |
CN106294139B (zh) | 一种软件代码中重复片段的检测提取方法 | |
WO2013154055A1 (ja) | 構造解析装置及びプログラム | |
Belhajjame et al. | On characterising and identifying mismatches in scientific workflows | |
KR100910895B1 (ko) | 법률의 개정내용 심사 및 제/개정 작업을 위한 자동화시스템 및 그 방법 | |
Feng et al. | NiCad+: Speeding the detecting process of nicad | |
CN109472145A (zh) | 一种基于图论的代码复用识别方法及系统 | |
CN108108441A (zh) | 一种数据库表结构分析方法和系统 | |
Yoon et al. | A conference paper exploring system based on citing motivation and topic | |
Bacci et al. | Automatic mark-up of legislative documents and its application to parallel text generation | |
CN113722421A (zh) | 一种合同审计方法和系统,及计算机可读存储介质 | |
JP2008226204A (ja) | Web情報収集装置、Web情報収集方法、Web情報収集プログラム | |
JP5779529B2 (ja) | 類似設計書検索システム及び類似設計書検索方法 | |
CN111625749B (zh) | 参会公司网站详情页信息提取方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20121128 |