CN104462157B - 一种文本数据二次结构化的方法及装置 - Google Patents

一种文本数据二次结构化的方法及装置 Download PDF

Info

Publication number
CN104462157B
CN104462157B CN201310449600.1A CN201310449600A CN104462157B CN 104462157 B CN104462157 B CN 104462157B CN 201310449600 A CN201310449600 A CN 201310449600A CN 104462157 B CN104462157 B CN 104462157B
Authority
CN
China
Prior art keywords
node
data
secondary structure
pending
default
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.)
Expired - Fee Related
Application number
CN201310449600.1A
Other languages
English (en)
Other versions
CN104462157A (zh
Inventor
朱学武
吴显丽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peking University Founder Group Co Ltd
Beijing Founder Electronics Co Ltd
Original Assignee
Peking University Founder Group Co Ltd
Beijing Founder Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Peking University Founder Group Co Ltd, Beijing Founder Electronics Co Ltd filed Critical Peking University Founder Group Co Ltd
Priority to CN201310449600.1A priority Critical patent/CN104462157B/zh
Publication of CN104462157A publication Critical patent/CN104462157A/zh
Application granted granted Critical
Publication of CN104462157B publication Critical patent/CN104462157B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion

Abstract

本发明公开了一种文本数据二次结构化的方法及装置,用以解决现有技术中二次结构化的效率和准确性较低的问题。该方法XML解析器采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配,并根据预设的规则,对匹配出的数据所在的节点中的数据进行二次结构化。通过上述方法,可直接根据预设的各正则表达式识别XML数据中需要进行二次结构化的节点,从而无需人工识别,因此可有效提高二次结构化的效率,并且由于无需人工识别需要进行二次结构化的节点,因此可避免引入人为主观错误,从而也可有效提高二次结构化的准确性。

Description

一种文本数据二次结构化的方法及装置
技术领域
本发明涉及数据处理领域,尤其涉及一种文本数据二次结构化的方法及装置。
背景技术
可扩展标记语言(Extensible Markup Language,XML)已经成为世界上发展最快的技术之一,主要用于将文本数据进行结构化,提供文本数据的结构化视图等。在很多应用领域中对文本数据的结构化都有着很高的要求,特别是在出版领域与教育领域,这就需要对已经使用XML进行了简单结构化的文本数据再进行二次结构化。
现有技术中,对文本数据进行二次结构化的方法为,人工识别XML数据中的每个节点是否需要进行二次结构化,对于需要进行二次结构化的节点,采用预先编写的程序对该节点中的数据进行二次结构化。
现有技术中的二次结构化方法会使程序员的工作量非常大,导致二次结构化的效率较低,并且由于人工识别的方式识别XML数据中的每个节点是否需要进行二次结构化,因此在二次结构化的过程中可能会因人为主观错误而降低二次结构化的准确性。
发明内容
有鉴于此,本发明实施例提供一种文本数据二次结构化的方法及装置,用以解决现有技术中二次结构化的效率和准确性较低的问题。
本发明实施例提供的一种文本数据二次结构化的方法,包括:
可扩展标记语言XML解析器采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配;并
将匹配出的数据所在的节点确定为待处理节点,所述待处理节点为需要进行二次结构化的节点;以及
根据预设的规则对所述待处理节点中的数据进行二次结构化。
本发明实施例提供的一种文本数据二次结构化的装置,包括:
匹配模块,用于采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配;
确定模块,用于将匹配出的数据所在的节点确定为待处理节点,所述待处理节点为需要进行二次结构化的节点;
结构化模块,用于根据预设的规则对所述待处理节点中的数据进行二次结构化。
本发明实施例提供一种文本数据二次结构化的方法及装置,该方法XML解析器采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配,并根据预设的规则,对匹配出的数据所在的节点中的数据进行二次结构化。通过上述方法,可直接根据预设的各正则表达式识别XML数据中需要进行二次结构化的节点,从而无需人工识别,因此可有效提高二次结构化的效率,并且由于无需人工识别需要进行二次结构化的节点,因此可避免引入人为主观错误,从而也可有效提高二次结构化的准确性。
附图说明
图1为本发明实施例提供的文本数据二次结构化的过程;
图2为本发明实施例提供的文本数据的二次结构化装置结构示意图。
具体实施方式
本发明实施例提供一种文本数据二次结构化的方法及装置,该方法XML解析器采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配,并根据预设的规则,对匹配出的数据所在的节点中的数据进行二次结构化。通过上述方法,可直接根据预设的各正则表达式识别XML数据中需要进行二次结构化的节点,从而无需人工识别,因此可有效提高二次结构化的效率,并且由于无需人工识别需要进行二次结构化的节点,因此可避免引入人为主观错误,从而也可有效提高二次结构化的准确性。
下面结合说明书附图,对本发明实施例进行详细描述。
图1为本发明实施例提供的文本数据二次结构化的过程,具体包括以下步骤:
S101:XML解析器采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配。
在本发明实施例中,可预先根据要进行二次结构化的数据的关键字符预设各正则表达式,正则表达式用于匹配XML数据中的关键字符。由于XML数据是以XML文档对象模型(Document Object Model,DOM)树的形式组织的,XML DOM树中的每个节点都包含了一部分XML数据,因此,在使用XML解析器解析XML数据时,可采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配。
进一步的,考虑到XML数据中的编码可能并不统一,因此为了提高后续二次结构化的准确性,本发明实施例中XML解析器在采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配之前,还可将该XML数据中的编码转换为预设格式的编码。其中,该预设格式的编码包括但不限于统一码(Unicode)。
S102:将匹配出的数据所在的节点确定为待处理节点。
其中,该待处理节点即为需要进行二次结构化的节点。
由于正则表达式是预先根据需要进行二次结构化的数据的关键字符预设的,因此,如果通过上述正则表达式匹配到某个节点中的数据,则说明该节点需要进行二次结构化,将该节点作为待处理节点进行后续的二次结构化处理。
S103:根据预设的规则对该待处理节点中的数据进行二次结构化。
在本发明实施例中,可预先针对预设的每个正则表达式,预设与该正则表达式相对应的拆分规则,则步骤S103中对待处理节点中的数据进行二次结构化的方法可以为:根据匹配出该待处理节点中数据的正则表达式,以及预设的与匹配出该待处理节点中数据的正则表达式相对应的拆分规则,对该待处理节点中的数据进行拆分,得到各子数据,根据得到的子数据的数量,创建相应数量(该相应数量与得到的子数据的数量相同)的节点,以在创建的一个节点中添加一个子数据的方式,将拆分得到的各子数据添加到创建的各节点中。
进一步的,在创建相应数量的节点时,可在该待处理节点下,创建相应数量的、以该待处理节点为父节点的节点。也即,创建的节点是该待处理节点的子节点。
另外,在将得到的各子数据添加到创建的各节点中后,还要将该待处理节点中的数据删除。
例如,假设XML数据如下:
<root>
<text>1、这是解析11。2、这是解析12。3、这是解析13。</text>
<text>A、这是选项a。B、这是选项b。C、这是选项c。</text>
</root>
在上述XML数据中,root是一个节点,root下有两个子节点text,第一个子节点text中的数据为“1、这是解析11。2、这是解析12。3、这是解析13。”,第二个子节点text中的数据为“A、这是选项a。B、这是选项b。C、这是选项c。”。
如果要对上述数据“1、这是解析11。2、这是解析12。3、这是解析13。”和“A、这是选项a。B、这是选项b。C、这是选项c。”进行二次结构化,则可预先设定两个正则表达式,第一个正则表达式的关键字符为“解析”,第二个正则表达式的关键字符为“选项”(当然,上述关键字符实际上是转换为Unicode之后的编码),针对这两个正则表达式预设的拆分规则可以是:将关键字符所在的句子拆分出来,作为一个子数据。
从而,采用如图1所示的方法对上述XML数据进行二次结构化时,在步骤S101和S102中,通过第一个正则表达式可确定上述XML数据中的第一个text节点为待处理节点,通过第二个正则表达式可确定上述XML数据中的第二个text节点为待处理节点。
在步骤S103中,针对第一个text节点,则可将每个包含关键字符“解析”的句子拆分为一个子数据,共得到3个子数据:“1、这是解析11。”、“2、这是解析12。”、“3、这是解析13。”。从而,在第一个text节点下创建3个节点,即创建3个以第一个text节点为父节点的子节点,将创建的这3个节点记为node,则将得到的3个子数据分别添加到3个节点node中,并将第一个text节点中的数据删除。
类似的,针对第二个text节点,可将每个包含关键字符“选项”的句子拆分为一个子数据,共得到3个子数据:“A、这是选项a。”、“B、这是选项b。”、“C、这是选项c。”。从而,在第二个text节点下创建3个节点,即创建3个以第二个text节点为父节点的子节点,将创建的这3个节点记为node,则将得到的3个子数据分别添加到3个节点node中,并将第二个text节点中的数据删除。
经上述二次结构化处理后,XML数据就变成了:
<root>
<text>
<node>这是解析11。</node>
<node>这是解析12。</node>
<node>这是解析13。</node>
</text>
<text>
<node>这是选项a。</node>
<node>这是选项b。</node>
<node>这是选项c。</node>
</text>
</root>
可见,通过上述方法,XML解析器可直接根据预设的各正则表达式识别XML数据中需要进行二次结构化的节点,无需人工识别,因此可有效提高二次结构化的效率,并且由于无需人工识别需要进行二次结构化的节点,因此可避免引入人为主观错误,从而也可有效提高二次结构化的准确性。
以上为本发明实施例提供的文本数据的二次结构化方法,基于同样的发明思路,本发明实施例还提供一种文本数据的二次结构化装置,如图2所示。
图2为本发明实施例提供的文本数据的二次结构化装置结构示意图,具体包括:
匹配模块201,用于采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配;
确定模块202,用于将匹配出的数据所在的节点确定为待处理节点,所述待处理节点为需要进行二次结构化的节点;
结构化模块203,用于根据预设的规则对所述待处理节点中的数据进行二次结构化。
所述装置还包括:
转换模块204,用于在所述匹配模块201采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配之前,将所述XML数据的编码转换为预设格式的编码,所述预设格式的编码包括统一码Unicode。
所述结构化模块203具体包括:
拆分单元2031,用于根据匹配出所述待处理节点中数据的正则表达式,以及预设的与匹配出所述待处理节点中数据的正则表达式相对应的拆分规则,对所述待处理节点中的数据进行拆分,得到各子数据;
创建单元2032,用于根据得到的子数据的数量,创建相应数量的节点;
添加单元2033,用于以在创建的一个节点中添加一个子数据的方式,将拆分得到的各子数据添加到创建的各节点中。
所述创建单元2032具体用于,在所述待处理节点下,创建相应数量的、以所述待处理节点为父节点的节点。
所述结构化模块203还包括:
删除单元2034,用于删除所述待处理节点中的数据。
具体的上述文本数据二次结构化的装置可以位于XML解析器中。
本发明实施例提供一种文本数据二次结构化的方法及装置,该方法XML解析器采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配,并根据预设的规则,对匹配出的数据所在的节点中的数据进行二次结构化。通过上述方法,可直接根据预设的各正则表达式识别XML数据中需要进行二次结构化的节点,从而无需人工识别,因此可有效提高二次结构化的效率,并且由于无需人工识别需要进行二次结构化的节点,因此可避免引入人为主观错误,从而也可有效提高二次结构化的准确性。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (6)

1.一种文本数据二次结构化的方法,其特征在于,包括:
可扩展标记语言XML解析器采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配;并
将匹配出的数据所在的节点确定为待处理节点,所述待处理节点为需要进行二次结构化的节点;以及
根据预设的规则对所述待处理节点中的数据进行二次结构化;
根据匹配出所述待处理节点中数据的正则表达式,以及预设的与匹配出所述待处理节点中数据的正则表达式相对应的拆分规则,对所述待处理节点中的数据进行拆分,得到各子数据;
根据得到的子数据的数量,创建相应数量的节点;在所述待处理节点下,创建相应数量的、以所述待处理节点为父节点的节点;
以在创建的一个节点中添加一个子数据的方式,将拆分得到的各子数据添加到创建的各节点中。
2.如权利要求1所述的方法,其特征在于,XML解析器采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配之前,所述方法还包括:
将所述XML数据的编码转换为预设格式的编码,所述预设格式的编码包括统一码Unicode。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
删除所述待处理节点中的数据。
4.一种文本数据二次结构化的装置,其特征在于,包括:
匹配模块,用于采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配;
确定模块,用于将匹配出的数据所在的节点确定为待处理节点,所述待处理节点为需要进行二次结构化的节点;
结构化模块,用于根据预设的规则对所述待处理节点中的数据进行二次结构化;
拆分单元,用于根据匹配出所述待处理节点中数据的正则表达式,以及预设的与匹配出所述待处理节点中数据的正则表达式相对应的拆分规则,对所述待处理节点中的数据进行拆分,得到各子数据;
创建单元,用于根据得到的子数据的数量,创建相应数量的节点;在所述待处理节点下,创建相应数量的、以所述待处理节点为父节点的节点;
添加单元,用于以在创建的一个节点中添加一个子数据的方式,将拆分得到的各子数据添加到创建的各节点中。
5.如权利要求4所述的装置,其特征在于,所述装置还包括:
转换模块,用于在所述匹配模块采用预设的各正则表达式对XML数据中每个节点中的数据进行匹配之前,将所述XML数据的编码转换为预设格式的编码,所述预设格式的编码包括统一码Unicode。
6.如权利要求4所述的装置,其特征在于,所述结构化模块还包括:
删除单元,用于删除所述待处理节点中的数据。
CN201310449600.1A 2013-09-24 2013-09-24 一种文本数据二次结构化的方法及装置 Expired - Fee Related CN104462157B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310449600.1A CN104462157B (zh) 2013-09-24 2013-09-24 一种文本数据二次结构化的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310449600.1A CN104462157B (zh) 2013-09-24 2013-09-24 一种文本数据二次结构化的方法及装置

Publications (2)

Publication Number Publication Date
CN104462157A CN104462157A (zh) 2015-03-25
CN104462157B true CN104462157B (zh) 2018-03-27

Family

ID=52908209

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310449600.1A Expired - Fee Related CN104462157B (zh) 2013-09-24 2013-09-24 一种文本数据二次结构化的方法及装置

Country Status (1)

Country Link
CN (1) CN104462157B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105376636B (zh) * 2015-10-08 2018-05-01 青岛海信电器股份有限公司 填写验证码的方法、辅助方法、智能电视及智能移动终端
CN105590068A (zh) * 2015-12-25 2016-05-18 北京奇虎科技有限公司 文件指纹校验方法及装置
CN106776854B (zh) * 2016-11-28 2020-05-12 南京国电南自轨道交通工程有限公司 一种适应地铁综合监控系统的数据黏合结构及处理方法
CN108664973A (zh) * 2018-03-28 2018-10-16 北京捷通华声科技股份有限公司 文本处理方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101520770A (zh) * 2008-02-29 2009-09-02 国际商业机器公司 分析、转换和拆分结构化数据的方法和装置
CN101739462A (zh) * 2009-12-31 2010-06-16 中兴通讯股份有限公司 可扩展标记语言编码方法、解码方法和客户端
CN102982027A (zh) * 2011-09-02 2013-03-20 北大方正集团有限公司 提取文档中内容的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101520770A (zh) * 2008-02-29 2009-09-02 国际商业机器公司 分析、转换和拆分结构化数据的方法和装置
CN101739462A (zh) * 2009-12-31 2010-06-16 中兴通讯股份有限公司 可扩展标记语言编码方法、解码方法和客户端
CN102982027A (zh) * 2011-09-02 2013-03-20 北大方正集团有限公司 提取文档中内容的方法和装置

Also Published As

Publication number Publication date
CN104462157A (zh) 2015-03-25

Similar Documents

Publication Publication Date Title
CN108415702B (zh) 一种移动终端应用界面动态渲染方法和装置
CN104462157B (zh) 一种文本数据二次结构化的方法及装置
CN111290778B (zh) Ai模型的包装方法、平台及电子设备
US20120324459A1 (en) Processing hierarchical data in a map-reduce framework
CN110020353B (zh) 网页表单的构建方法及装置
CN108170435A (zh) 一种源代码转换方法、装置及设备
CN110990467B (zh) 一种bim模型格式转换方法及转换系统
CN106886398B (zh) 一种层叠样式表的提取方法和设备
CN106484520A (zh) 一种基于数据血缘关系的智能调度方法及系统
CN106202395A (zh) 文本聚类方法和装置
CN106843820A (zh) 代码处理方法和装置
CN104346407B (zh) 数据申报系统中报表和xml文件数据交互的方法及其装置
CN103309676B (zh) 用于海洋数值模拟ROMS的Web服务封装方法以及系统
CN107391529A (zh) 一种实现对象关系映射orm的方法及装置
CN105867886B (zh) 一种写表格的方法及装置
CN106776275B (zh) 一种基于分组复用的测试流程自动生成方法
Cordero et al. Dynamic multi-objective optimization with jMetal and Spark: a case study
US8032826B2 (en) Structure-position mapping of XML with fixed length data
CN106293651A (zh) 一种通用接口的实现方法及装置
CN107436929A (zh) 可扩展标记语言xml文件解析方法及装置
CN106802940A (zh) 一种计算文本主题模型的方法及装置
Glaser Domain model optimized deployment and execution of cloud applications with TOSCA
CN106648912A (zh) 数据采集平台中数据处理的模块化方法及装置
CN110019497A (zh) 一种数据读取方法及装置
US8606773B2 (en) Method for combining and processing web data using tables and programming-by-demonstration

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180327

Termination date: 20190924

CF01 Termination of patent right due to non-payment of annual fee