CN109815235A - 生成数据源的方法、装置、存储介质及电子设备 - Google Patents

生成数据源的方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN109815235A
CN109815235A CN201811644365.2A CN201811644365A CN109815235A CN 109815235 A CN109815235 A CN 109815235A CN 201811644365 A CN201811644365 A CN 201811644365A CN 109815235 A CN109815235 A CN 109815235A
Authority
CN
China
Prior art keywords
target
data
undetermined
target list
form data
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.)
Granted
Application number
CN201811644365.2A
Other languages
English (en)
Other versions
CN109815235B (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.)
Neusoft Corp
Original Assignee
Neusoft Corp
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 Neusoft Corp filed Critical Neusoft Corp
Priority to CN201811644365.2A priority Critical patent/CN109815235B/zh
Publication of CN109815235A publication Critical patent/CN109815235A/zh
Application granted granted Critical
Publication of CN109815235B publication Critical patent/CN109815235B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本公开涉及一种生成数据源的方法、装置、存储介质及电子设备,获取待识别的目标表单,确定该目标表单的表单类型,并从预先设置的识别规则中确定与该表单类型对应的目标识别规则,根据该目标识别规则从该目标表单中识别第一待定表单数据,确定该第一待定表单数据是否为目标表单字段,在该第一待定表单数据为该目标表单字段时,根据该目标表单字段生成数据源。

Description

生成数据源的方法、装置、存储介质及电子设备
技术领域
本公开涉及数据源生成领域,具体地,涉及一种生成数据源的方法、装置、存储介质及电子设备。
背景技术
数据源(Data Source)顾名思义,数据的来源,在数据源中存储了所有建立数据库连接的信息,就像通过指定文件名称可以在文件系统中找到文件一样,通过提供正确的数据源名称,可以找到相应的数据库连接,通常情况下,生成表单、统计图表等都需要依据数据源来生成。
相关技术中,主要通过表单导入的方式生成数据源,并且需要人工将表单中的字段一一导入后生成数据源,这种生成数据源的方法效率较低,通用性较差。
发明内容
本公开提供一种生成数据源的方法、装置、存储介质及电子设备。
第一方面,提供一种生成数据源的方法,所述方法包括:获取待识别的目标表单;确定所述目标表单的表单类型,并从预先设置的识别规则中确定与所述表单类型对应的目标识别规则;根据所述目标识别规则从所述目标表单中识别第一待定表单数据;确定所述第一待定表单数据是否为目标表单字段;在所述第一待定表单数据为所述目标表单字段时,根据所述目标表单字段生成数据源。
可选地,在所述表单类型包括Table类型时,所述目标识别规则包括:
确定所述目标表单中是否包括第一目标行,所述第一目标行不存在合并单元格;若所述目标表单包括所述第一目标行,则确定所述第一目标行中是否包括第二目标行,所述第二目标行存在连续预设数量的数据单元格;所述数据单元格包括填充有数据的单元格;若确定所述第一目标行中包括所述第二目标行,则确定所述第二目标行中的数据为所述第一待定表单数据;或者,
确定所述目标表单中是否包括第一目标列,所述第一目标列不存在合并单元格;若所述目标表单包括所述第一目标列,则确定所述第一目标列中是否包括第二目标列,所述第二目标列存在连续预设数量的数据单元格;所述数据单元格包括填充有数据的单元格;若确定所述第一目标列中包括所述第二目标列,则确定所述第二目标列中的数据为所述第一待定表单数据。
可选地,在所述表单类型包括Form类型时,所述目标识别规则包括:
确定第三目标行,所述第三目标行为所述目标表单中的任一行;获取所述第三目标行在所述目标表单中对应的列数;计算所述列数与2的比值;在根据所述比值确定所述列数被2整除时,将所述第三目标行在所述目标表单中对应的奇数列中的数据,确定为所述第一待定表单数据,将所述第三目标行在所述目标表单中对应的偶数列中的数据,确定为非待定表单数据;在根据所述比值确定所述列数未被2整除时,确定所述第三目标行的最后一列中的数据是否标记为所述非待定表单数据,在所述最后一列中的数据未标记为所述非待定表单数据,将所述第三目标行在所述目标表单中对应的奇数列中的数据,确定为所述第一待定表单数据;在所述最后一列中的数据标记为所述非待定表单数据,将所述第三目标行中除所述最后一列外的其余列中的奇数列中的数据,确定为所述第一待定表单数据;或者,
确定第三目标列,所述第三目标列为所述目标表单中的任一列;获取所述第三目标列在所述目标表单中对应的行数;计算所述行数与2的比值;在根据所述比值确定所述行数被2整除时,将所述第三目标列在所述目标表单中对应的奇数行中的数据,确定为所述第一待定表单数据,将所述第三目标列在所述目标表单中对应的偶数行中的数据,确定为非待定表单数据;在根据所述比值确定所述行数未被2整除时,确定所述第三目标列的最后一行中的数据是否标记为所述非待定表单数据,在所述最后一行中的数据未标记为所述非待定表单数据,将所述第三目标列在所述目标表单中对应的奇数行中的数据,确定为所述第一待定表单数据;在所述最后一行中的数据标记为所述非待定表单数据,将所述第三目标列中除所述最后一行外的其余行中的奇数行中的数据,确定为所述第一待定表单数据。
可选地,在所述确定所述第一待定表单数据是否为目标表单字段前,所述方法还包括:获取所述第一待定表单数据对应的第一预设识别参数;通过预设字符数据库从所述目标表单中的每个单元格中识别第二待定表单数据,并获取所述第二待定表单数据对应的第二预设识别参数;确定所述第一待定表单数据在所述目标表单中所处的目标单元格;从所述第二待定表单数据中确定位于所述目标单元格的目标待定表单数据,并获取所述目标待定表单数据对应的所述第二预设识别参数;所述确定所述第一待定表单数据是否为目标表单字段包括:根据所述第一预设识别参数和所述第二预设识别参数确定所述第一待定表单数据是否为目标表单字段。
可选地,在所述根据所述目标表单字段生成数据源前,所述方法还包括:通过预设符号数据库从所述目标表单中确定包含字段符号的单元格;从预设字段类型中获取所述字段符号对应的目标字段类型;所述根据所述目标表单字段生成数据源包括:根据所述目标表单字段、包含字段符号的单元格中的数据以及所述目标字段类型生成所述数据源。
第二方面,提供一种生成数据源的装置,所述装置包括:第一获取模块,用于获取待识别的目标表单;第一确定模块,用于确定所述目标表单的表单类型,并从预先设置的识别规则中确定与所述表单类型对应的目标识别规则;第一识别模块,用于根据所述目标识别规则从所述目标表单中识别第一待定表单数据;第二确定模块,用于确定所述第一待定表单数据是否为目标表单字段;数据源生成模块,用于在所述第一待定表单数据为所述目标表单字段时,根据所述目标表单字段生成数据源。
可选地,在所述表单类型包括Table类型时,所述目标识别规则包括:
确定所述目标表单中是否包括第一目标行,所述第一目标行不存在合并单元格;若所述目标表单包括所述第一目标行,则确定所述第一目标行中是否包括第二目标行,所述第二目标行存在连续预设数量的数据单元格;所述数据单元格包括填充有数据的单元格;若确定所述第一目标行中包括所述第二目标行,则确定所述第二目标行中的数据为所述第一待定表单数据;或者,
确定所述目标表单中是否包括第一目标列,所述第一目标列不存在合并单元格;若所述目标表单包括所述第一目标列,则确定所述第一目标列中是否包括第二目标列,所述第二目标列存在连续预设数量的数据单元格;所述数据单元格包括填充有数据的单元格;若确定所述第一目标列中包括所述第二目标列,则确定所述第二目标列中的数据为所述第一待定表单数据。
可选地,在所述表单类型包括Form类型时,所述目标识别规则包括:确定第三目标行,所述第三目标行为所述目标表单中的任一行;获取所述第三目标行在所述目标表单中对应的列数;计算所述列数与2的比值;在根据所述比值确定所述列数被2整除时,将所述第三目标行在所述目标表单中对应的奇数列中的数据,确定为所述第一待定表单数据,将所述第三目标行在所述目标表单中对应的偶数列中的数据,确定为非待定表单数据;在根据所述比值确定所述列数未被2整除时,确定所述第三目标行的最后一列中的数据是否标记为所述非待定表单数据,在所述最后一列中的数据未标记为所述非待定表单数据,将所述第三目标行在所述目标表单中对应的奇数列中的数据,确定为所述第一待定表单数据;在所述最后一列中的数据标记为所述非待定表单数据,将所述第三目标行中除所述最后一列外的其余列中的奇数列中的数据,确定为所述第一待定表单数据;或者,
确定第三目标列,所述第三目标列为所述目标表单中的任一列;获取所述第三目标列在所述目标表单中对应的行数;计算所述行数与2的比值;在根据所述比值确定所述行数被2整除时,将所述第三目标列在所述目标表单中对应的奇数行中的数据,确定为所述第一待定表单数据,将所述第三目标列在所述目标表单中对应的偶数行中的数据,确定为非待定表单数据;在根据所述比值确定所述行数未被2整除时,确定所述第三目标列的最后一行中的数据是否标记为所述非待定表单数据,在所述最后一行中的数据未标记为所述非待定表单数据,将所述第三目标列在所述目标表单中对应的奇数行中的数据,确定为所述第一待定表单数据;在所述最后一行中的数据标记为所述非待定表单数据,将所述第三目标列中除所述最后一行外的其余行中的奇数行中的数据,确定为所述第一待定表单数据。
可选地,所述装置还包括:第二获取模块,用于获取所述第一待定表单数据对应的第一预设识别参数;第二识别模块,用于通过预设字符数据库从所述目标表单中的每个单元格中识别第二待定表单数据,并获取所述第二待定表单数据对应的第二预设识别参数;第三确定模块,用于确定所述第一待定表单数据在所述目标表单中所处的目标单元格;第四确定模块,用于从所述第二待定表单数据中确定位于所述目标单元格的目标待定表单数据,并获取所述目标待定表单数据对应的所述第二预设识别参数;所述第二确定模块,用于根据所述第一预设识别参数和所述第二预设识别参数确定所述第一待定表单数据是否为目标表单字段。
可选地,所述装置还包括:第五确定模块,用于通过预设符号数据库从所述目标表单中确定包含字段符号的单元格;第三获取模块,用于从预设字段类型中获取所述字段符号对应的目标字段类型;所述数据源生成模块,用于根据所述目标表单字段、包含字段符号的单元格中的数据以及所述目标字段类型生成所述数据源。
第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第一方面所述方法的步骤。
第四方面,提供一种电子设备,包括:存储器,其上存储有计算机程序;处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面所述方法的步骤。
采用上述技术方案,通过获取待识别的目标表单;确定所述目标表单的表单类型,并从预先设置的识别规则中确定与所述表单类型对应的目标识别规则;根据所述目标识别规则从所述目标表单中识别第一待定表单数据;确定所述第一待定表单数据是否为目标表单字段;在所述第一待定表单数据为所述目标表单字段时,根据所述目标表单字段生成数据源,这样可以避免用户将表单中的字段一一导入来生成数据源的复杂操作,从而提高数据源的生成效率,并且可以将多种类型的表单识别为统一的数据源,进而提高数据源生成方法的通用性。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性实施例示出的第一种生成数据源的方法的流程图;
图2是根据一示例性实施例示出的第二种生成数据源的方法的流程图;
图3是根据一示例性实施例示出的第一种生成数据源的装置的框图;
图4是根据一示例性实施例示出的第二种生成数据源的装置的框图;
图5是根据一示例性实施例示出的第三种生成数据源的装置的框图;
图6是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
本公开提供一种生成数据源的方法、装置、存储介质及电子设备,首先获取待识别的目标表单,然后确定该目标表单的表单类型,并从预先设置的识别规则中确定与该表单类型对应的目标识别规则;根据该目标识别规则从该目标表单中识别第一待定表单数据;确定该第一待定表单数据是否为目标表单字段;在该第一待定表单数据为该目标表单字段时,根据该目标表单字段生成数据源,这样可以避免用户将表单中的字段一一导入来生成数据源的复杂操作,从而提高数据源的生成效率,并且可以将多种类型的表单识别为统一的数据源,进而提高数据源生成方法的通用性。
下面结合附图,对本公开的具体实施方式进行详细说明。
图1是根据一示例性实施例示出的一种生成数据源的方法的流程图,如图1所示,该方法包括以下步骤:
S101,获取待识别的目标表单。
其中,该目标表单可以包括Excel表单或者Word表单。
在一种可能的实现方式中,可以借助数据源生成应用程序将该目标表单识别为数据源,因此,当用户想要将该目标表单识别为数据源时,可以将该目标表单上传至该数据源生成应用程序,然后通过触发数据源生成相关选项(例如“生成数据源”)启动数据源生成的功能,在本步骤中,当确定数据源生成的功能被启动时,可以获取用户上传或者从表单列表中选择的该目标表单。
S102,确定该目标表单的表单类型,并从预先设置的识别规则中确定与该表单类型对应的目标识别规则。
其中,该表单类型可以包括Table类型或者Form类型,例如,Excel表单即为一种Table类型的表单,Word表单即为一种Form类型的表单。在一种可能的实现方式中,可以通过该目标表单的文件扩展名确定该表单类型,例如,当该目标表单的文件扩展名为.doc或者.docx时,可以确定该目标表单的表单类型为Form类型,当该目标表单的文件扩展名为.xls时,可以确定该目标表单的表单类型为Table类型,此处只是举例说明,本公开对此不作限定。
另外,在该表单类型包括Table类型时,该目标识别规则可以包括:
确定该目标表单中是否包括第一目标行,该第一目标行不存在合并单元格;若该目标表单包括该第一目标行,则确定该第一目标行中是否包括第二目标行,该第二目标行存在连续预设数量的数据单元格;该数据单元格包括填充有数据的单元格;若确定该第一目标行中包括第二目标行,则确定第二目标行中的数据为该第一待定表单数据;或者,
确定该目标表单中是否包括第一目标列,该第一目标列不存在合并单元格;若该目标表单包括该第一目标列,则确定该第一目标列中是否包括第二目标列,该第二目标列存在连续预设数量的数据单元格;该数据单元格包括填充有数据的单元格;若确定该第一目标列中包括第二目标列,则确定第二目标列中的数据为该第一待定表单数据。
在该表单类型包括Form类型时,该目标识别规则可以包括:
确定第三目标行,该第三目标行为该目标表单中的任一行;获取该第三目标行在该目标表单中对应的列数;计算该列数与2的比值;在根据该比值确定该列数被2整除时,将该第三目标行在该目标表单中对应的奇数列中的数据,确定为该第一待定表单数据,将该第三目标行在该目标表单中对应的偶数列中的数据,确定为非待定表单数据;在根据该比值确定该列数未被2整除时,确定该第三目标行的最后一列中的数据是否标记为该非待定表单数据,在该最后一列中的数据未标记为该非待定表单数据,将该第三目标行在该目标表单中对应的奇数列中的数据,确定为该第一待定表单数据;在该最后一列中的数据标记为该非待定表单数据,将该第三目标行中除该最后一列外的其余列中的奇数列中的数据,确定为该第一待定表单数据;或者,
确定第三目标列,该第三目标列为该目标表单中的任一列;获取该第三目标列在该目标表单中对应的行数;计算该行数与2的比值;在根据该比值确定该行数被2整除时,将该第三目标列在该目标表单中对应的奇数行中的数据,确定为该第一待定表单数据,将该第三目标列在该目标表单中对应的偶数行中的数据,确定为非待定表单数据;在根据该比值确定该行数未被2整除时,确定该第三目标列的最后一行中的数据是否标记为该非待定表单数据,在该最后一行中的数据未标记为该非待定表单数据,将该第三目标列在该目标表单中对应的奇数行中的数据,确定为该第一待定表单数据;在该最后一行中的数据标记为该非待定表单数据,将该第三目标列中除该最后一行外的其余行中的奇数行中的数据,确定为该第一待定表单数据。
S103,根据该目标识别规则从该目标表单中识别第一待定表单数据。
其中,该第一待定表单数据可以包括从该目标表单中获取的字符数据,例如,表1为文件名为“某科技大学学生信息登记表.xls”的Excel表单,表2为文件名为“某科技大学优秀研究生申请表.doc”的Word表单,在该目标表单为表1时,表1中的“姓名”、“身份证号”、“学号”、“学院”、“专业”、“入学日期”、“导师”即为该第一待定表单数据,在该目标表单为表2时,表2中的“姓名”、“性别”、“类别”、“学号”、“学院”、“导师”、“荣誉称号类别”、“个人事迹”、“导师意见”即为该第一待定表单数据。
表1
表2
示例地,下面分别以表1和表2为例对根据该目标识别规则从该目标表单中识别该第一待定表单数据的具体实施方式进行说明:
在该目标表单为表1时,该目标表单的表单类型为Table类型,此时,可以按照与Table类型对应的目标标识规则从表1中确定该第一待定表单数据,具体地,首选确定表1中是否包括第一目标行,其中,该第一目标行是指不存在合并单元格的行,通常情况下,可以以行为单位从表1所示的Excel表的第一行开始查找该第一目标行,直至遍历完该Excel表,来确定每一行是否不存在合并单元格,在一种可能的实现方式中,可以通过调用Excel解析接口来确定Excel表中每一行是否为不存在合并单元格的行,例如,通过遍历表1可以确定表1的第一行为合并单元格的行,表1的第二行至第四行均为不存在合并单元格的行,因此,可以确定表1中的第二行、第三行、第四行均为该第一目标行,也就是说该目标表单包括该第一目标行,此时,可以进一步确定该第一目标行中是否包括第二目标行,其中,该第二目标行为存在连续预设数量的数据单元格的行,该数据单元格可以包括填充有数据的单元格,在一种可能的实现方式中,可以预先设置该数据单元格的数量阈值,在确定该第一目标行中存在连续的该数据单元格,并且该连续的数据单元格的数量大于或者等于该数量阈值时,可以将该第一目标行确定为该第二目标行,例如,对于表1来说,该数量阈值为5时,可以确定在上述三个该第一目标行(第二行、第三行、第四行)中,仅有第二行中存在连续的数据单元格,并且该连续的数据单元格的数量为7,大于该数量阈值5,此时,可以确定该第一目标行(第二行、第三行、第四行)中包括第二目标行,该第二目标行即为表1的第二行,进一步可以确定表1第二行中的数据即为该第一待定表单数据,分别为“姓名”、“身份证号”、“学号”、“学院”、“专业”、“入学日期”、“导师”,上述示例只是举例说明,本公开对此不作限定。
另外,在该目标表单为将表1所示的Excel表单顺时针旋转90度后的表单时,可以以列为单位对该目标表单进行遍历,从而在该目标表单中确定该第一待定表单数据,具体的按列进行识别的具体实施方式与上一段中描述的按行进行识别的具体实施方式相同,在此不再赘述。
在该目标表单为表2时,该目标表单的表单类型为Form类型,此时,可以按照与Form类型对应的目标识别规则从表2中确定该第一待定表单数据,具体地,首先在表2中确定该第三目标行,其中,该第三目标行可以为表2中的任一行,在一种可能的实现方式中,可以以行为单位对表2进行遍历,具体地,表2总共包括5行,在该第三目标行为表2中的第一行时,可以获取到表2中第一行的列数为6,此时可以确定表2中第一行的列数可以被2整除,进而可以将表2中第一行中对应的奇数列(即为表2中第一行中的第一列、第三列以及第五列)中的数据确定为该第一待定表单数据分别为“姓名”、“性别”、“类别”,将表2中第一行中对应的偶数列(即为表2中第一行中的第二列、第四列以及第六列)中的数据确定为该非待定表单数据,也就是说,表2中第一行第六列中的“□博士□硕士”为该非待定表单数据;继续识别表2中的第二行,在该第三目标行为表2中的第二行时,可以获取到表2中第二行的列数为5,此时,可以确定表2中第二行的列数未被2整除,在确定表2中第二行最后一列(即为表2中第二行第五列)中的数据未被标记为该非待定表单数据时,可以将表2中第二行奇数列(即为表2中第二行中的第一列、第三列以及第五列)中的数据确定为该第一待定表单数据,分别为“学号”、“学院”、“导师”,考虑到实际的表单中,通常在与该表单字段紧邻的右侧或者下侧为与该表单字段对应的待输入内容的预留输入区域,因此,在确定表2中第二行的列数未被2整除,并且确定表2中第二行最后一列(即为表2中第二行第五列)中的数据未被标记为该非待定表单数据时,还可以进一步将表2中与第二行最后一列紧邻的第三行第三列中的数据标记为该非待定表单数据;继续识别表2中的第三行,在该第三目标行为表2中的第三行时,可以获取到表2中第三行的列数为3,此时,可以确定表2中第三行的列数未被2整除,并且由于表2中第三行第三列中的数据已经被标记为该非待定表单数据,因此,可以将表2中第三行除第3列外的其他列中的奇数列(即为表2中第三行第一列)中的数据确定为该第一待定表单数据为“荣誉类别”,将表2中第三行第二列中的数据“□优秀研究生标兵□优秀研究生□优秀研究生干部□优秀毕业研究生□优秀毕业干部”识别为该非待定表单数据;继续识别表2中的第四行和第五行,由于第四行和第五行的列数都为2,均可以被2整除,因此,在该第三目标行为表2中的第四行或者第五行时,可以把该第三目标行中的奇数列中的数据确定该第一待定表单数据,从而可以将表2中第四行第一列中的数据“个人事迹”识别为该第一待定表单数据,将表2中第四行第二列中的数据“我叫**,现为***”识别为非待定表单数据,将表2中第五行第一列中的数据“导师意见”识别为该第一待定表单数据,将表2中第五行第二列中的数据“符合条件,同意推荐”识别为该非待定表单数据,至此完成从表2中识别出该第一待定表单数据的过程,上述示例只是举例说明,本公开对此不作限定。
另外,在该目标表单为将表2所示的Word表单顺时针旋转90度后的表单时,也可以以列为单位对该目标表单进行遍历,从而在该目标表单中确定该第一待定表单数据,具体的按列进行识别的具体实施方式与上一段中描述的按行进行识别的具体实施方式相同,在此不再赘述。
S104,确定该第一待定表单数据是否为目标表单字段。
其中,该目标表单字段可以包括制作该目标表单时预先设置的字符数据,例如,表1中的“姓名”、“身份证号”、“学号”等均为表1对应的该目标表单字段,表2中的“姓名”、“性别”、“学号”等均为表2对应的该目标表单字段。
在一种可能的实现方式中,在根据该目标识别规则识别出该第一待定表单数据时,可以确定该第一待定表单数据即为该目标表单字段,但考虑到直接将该第一待定表单数据作为该目标表单字段时,数据源识别的准确率有待提高,因此,在另一种可能的实现方式中,为提高数据源识别的准确率,还可以根据预设字符数据库对通过目标识别规则确定的第一待定表单数据进行进一步地校验,这样可以根据目标识别规则和预设字符数据库两种数据源识别策略识别目标表单中的目标表单字段,因此,在确定该第一待定表单数据是否为目标表单字段之前,还可以获取该第一待定表单数据对应的第一预设识别参数,通过预设字符数据库从该目标表单中的每个单元格中识别第二待定表单数据,并获取该第二待定表单数据对应的第二预设识别参数;确定该第一待定表单数据在该目标表单中所处的目标单元格;从该第二待定表单数据中确定位于该目标单元格的目标待定表单数据,并获取该目标待定表单数据对应的该第二预设识别参数,这样,可以根据该第一预设识别参数和该第二预设识别参数确定该第一待定表单数据是否为目标表单字段,具体地,可以计算该第一预设识别参数和该第二预设识别参数的和,在该和大于或者等于预设识别评价阈值时,可以确定该第一待定表单数据即为该目标表单字段。
其中,该第一预设识别参数可以为在根据与表单类型对应的目标识别规则识别该第一待定表单数据时的评价参数,第二预设识别参数可以为在根据预设字符数据库识别该第二待定表单数据时的评价参数,并且该第一预设识别参数可以包括预先设置的与该第一待定表单数据对应的权重参数,该第二预设识别参数可以包括预先设置的与该第二待定表单数据对应的权重参数,该预设字符数据库可以包括关键字数据库、标题数据库等,用户可以根据自己的实际业务需求自定义该预设字符数据库,需要说明的是,在该预设字符数据库包括多种数据库时(如该预设字符数据库包括关键字数据库和标题数据库),该第二预设识别参数也包括多个,并且每种预设字符数据库对应一个第二预设识别参数,并且,在预先设置该第二预设识别参数时,可以根据识别该第二待定表单数据的预设字符数据库不同设置不同的权重参数,例如,对于关键字数据库,在根据关键字数据库识别该第二待定表单数据时,可以将该第二待定表单数据的权重参数设置为0.2,对于标题数据库,考虑到在根据该标题数据库将该目标表单中某个单元格中的数据识别为标题时,该单元格中的数据即为非待定表单数据,因此,在根据标题数据库识别该第二待定表单数据时,需要将该权重参数设置为负数,例如,在根据标题数据库识别该第二待定表单数据时,可以将该第二待定表单数据的权重参数设置为-0.1。
由于通过预设字符数据库识别目标表单中的该第二待定表单数据的识别策略通常可以作为根据与表单类型对应的目标识别规则识别该第一待定表单数据辅助策略,目的是为提高该第一待定表单数据的识别准确率,因此,在预先设置该第一预设识别参数和该第二预设识别参数时,通常设置该第二预设识别参数小于该第一预设识别参数,例如,在根据与表单类型对应的目标识别规则确定该第一待定表单数据时,可以将该第一待定表单数据的第一预设识别参数设置为0.6,在根据后续提到的预设字符数据库中的关键字数据库从目标表单中识别待定表单数据时,可以将该第二预设识别参数设置为0.2,此处只是举例说明,本公开对此不作限定。
需要说明的是,在该第一待定表单数据所在的单元格为该目标单元格时,可以确定该第一待定表单数据即为该目标待定表单数据,因此,可以计算该目标待定表单数据的该第一预设识别参数和该第二预设识别参数的和,在该和大于或者等于第二预设识别评价阈值时,可以将该目标待定表单数据识别为该目标表单字段,进而可以将该第一待定表单数据识别为该目标表单字段。
示例地,以该目标待定表单数据为“姓名”,并且该预设字符数据库包括关键字数据库和标题数据库为例对根据该第一预设识别参数和该第二预设识别参数确定该目标待定表单数据是否为目标表单字段进行说明,假设该预设识别评价阈值为0.7时,该目标待定表单数据“姓名”对应的第一预设识别参数为0.6,该目标待定表单数据“姓名”在关键字数据库中的第二预设识别参数为0.2,该目标待定表单数据“姓名”在标题数据库中的第二预设识别参数为0,此时,计算该目标待定表单数据“姓名”的该第一预设识别参数和该第二预设识别参数的和为0.8(0.6+0.2+0),大于该预设识别评价阈值0.7,此时,可以确定该目标待定表单数据“姓名”为该目标表单字段,进而可以确定该第一待定表单数据“姓名”为该目标表单字段,上述示例只是举例说明,本公开对此不作限定。
下面以该预设字符数据库包括关键字数据库和标题数据库为例对通过预设字符数据库从该目标表单中的每个单元格中识别该第二待定表单数据的具体实施方式进行说明:
在根据该关键字数据库从该目标表单中识别该第二待定表单数据时,确定从该目标表单的目标单元格(其中,该目标单元格可以为该目标表单中的任一单元格)中获取的字符数据是否包含在该关键字数据库中,在确定从该目标单元格中获取的该字符数据包含在该关键字数据库中时,可以将从该目标单元格中获取的该字符数据确定为该第二待定表单数据,另外,为提高关键字识别的准确率,在一种可能的实现方式中,还可以对从该目标单元格中获取到的该字符数据进行语义分析,以避免将叙述较复杂的待定表单数据识别为非待定表单数据,例如,在从该目标单元格中获取到的该字符数据为“请输入您的姓名”时,对该字符数据“请输入您的姓名”进行语义分析后,可以将该字符数据“请输入您的姓名”识别为关键字数据库中的“姓名”,这样,可以将该字符数据“请输入您的姓名”识别为该第二待定表单数据,通过语义分析进行关键字识别的具体实现方式可以参考现有技术中的相关描述,在此不作赘述。
还需说明的是,还可以根据该关键字数据库进行多种语言的关键字识别,例如,可以识别英语、日语、汉语、维语等多种语言。
在根据该标题数据库从该目标表单中识别该第二待定表单数据时,确定从该目标表单的目标单元格中获取的字符数据是否包含在该标题数据库中,在确定从该目标单元格中获取的该字符数据包含在该标题数据库中时,可以将从该目标单元格中获取的该字符数据识别为标题,此时,可以确定从该目标单元格中获取的该字符数据不是该第二待定表单数据,需要说明的是,该标题数据库中可以包括预设设置的多种标题以及每种标题常见的字号和字体,这样,在确定从该目标单元格中获取的该字符数据为该标题数据库中的标题,并且该字符数据的字号和字体均与该标题数据库中记录的字号和字体相同时,可以确定从该目标单元格中获取的该字符数据包含在该标题数据库中。
另外,在获取该第二待定表单数据对应的该第二预设识别参数时,一种可能的实现方式可以是用数字0或1表示对从目标单元格中获取的字符数据在该预设字符数据库中的识别结果,例如,可以用数字“1”表示从目标单元格中获取的字符数据包含在预设字符数据库中,用数字“0”表示该预设字符数据库中不包含从目标单元格中获取的字符数据,这样,可以根据预设的权重参数和该识别结果确定该第二预设识别参数。
示例地,以该预设字符数据库包括关键字数据库和标题数据库为例进行说明,假设根据关键字数据库识别该第二待定表单数据时的权重参数为0.2,根据标题数据库识别该第二待定表单数据时的权重参数为-0.1,当确定表1中第一行第一列中的字符数据“某科技大学学生信息登记表”包含在该标题数据库中,而关键字数据库中不包含该字符数据“某科技大学学生信息登记表”时,可以确定该字符数据“某科技大学学生信息登记表”在关键字数据库中的识别结果为0,在标题数据库中的识别结果为1,此时,可以获取到该字符数据“某科技大学学生信息登记表”在该关键字数据库中的该第二预设识别参数为0(具体计算过程为0*0.2),该字符数据“某科技大学学生信息登记表”在该标题数据库中的该第二预设识别参数为-0.1(具体计算过程为1*(-0.1);当确定表1中第二行第一列中的字符数据“姓名”包含在该关键字数据库中,而该标题数据库中不包含该字符数据“姓名”时,可以确定该字符数据“姓名”在关键字数据库中的识别结果为1,在标题数据库中的识别结果为0,此时,可以获取到该字符数据“姓名”在该关键字数据库中的该第二预设识别参数为0.2(具体计算过程为1*0.2),该字符数据“姓名”在该标题数据库中的该第二预设识别参数为0(具体计算过程为0*(-0.1),上述示例只是举例说明,本公开对此不作限定。
S105,在该第一待定表单数据为该目标表单字段时,根据该目标表单字段生成数据源。
其中,该数据源可以用于存储建立数据库时的模板信息,通常情况下,生成表单、统计图表等都需要依据数据源来生成。
在确定该目标表单字段后,可以根据该目标表单字段生成一个数据源,但考虑到仅根据目标表单字段生成的数据源记载的模板信息不够全面,因此,为生成一个完整的数据源,在一种可能的实现方式中,在从目标表单中识别出该目标表单字段后,还需识别该目标表单中每个单元格中的表单数据的字段类型,然后根据该目标表单字段和该字段类型生成一个完整的数据源,具体地,可以通过预设符号数据库从该目标表单中确定包含字段符号的单元格,然后从预设字段类型中获取该字段符号对应的目标字段类型,这样,可以根据该目标表单字段、包含字段符号的单元格中的数据以及该目标字段类型生成该数据源。
其中,该预设符号数据库可以包括预先设置的字段符号数据库,该预设字段类型可以包括文本类、多选类、单选类、时间类等,例如,可以将“姓名”、“身份证号”、“学号”等只含有文字的表单数据的字段类型识别为文本类,将“□博士□硕士”等含有字段符号“□”的表单数据识别为单选类,将“◎党员◎硕士”等含有字段符号“◎”的表单数据识别为多选类,将“2018-10-11”等含有字段符号“-”的表单数据识别为时间类。
在一种可能的实现方式中,该预设符号数据库中预先存储有“□、◎、-”等多种字段符号以及每种字段符号对应的字段类型,因此,在通过预设符号数据库识别每个单元格中的数据的字段类型时,可以首先确定每个单元格中的数据是否包含预设符号数据库中存储的字段符号,在确定该单元格中的数据不包含预设符号数据库中存储的字段符号时,可以将该单元格中的数据的字段类型确定为文本类,在确定该单元格中的数据包含预设符号数据库中存储的字段符号时,可以进一步根据该单元格中的数据中包含的字段符号对应的字段类型,确定该单元格中的数据的字段类型,例如,将包含有“□”的某个单元格中的数据识别为单选类,将包含有“-”的某个单元格中的数据识别为时间类。
采用上述方法,可以避免用户需要将表单中的字段一一导入来生成数据源的复杂操作,从而提高数据源的生成效率,并且可以将多种类型的表单识别为统一的数据源,进而提高数据源生成方法的通用性。
图2是根据一示例性实施例示出的一种生成数据源的方法的流程图,如图2所示,该方法包括以下步骤:
S201,获取待识别的目标表单。
其中,该目标表单可以包括Excel表单或者Word表单。
在一种可能的实现方式中,可以借助数据源生成应用程序将该目标表单识别为数据源,因此,当用户想要将该目标表单识别为数据源时,可以将该目标表单上传至该数据源生成应用程序,然后通过触发数据源生成相关选项(例如“生成数据源”)启动数据源生成的功能,在本步骤中,一种可能的实现方式可以是,当确定数据源生成的功能被启动时,可以获取用户上传或者从表单列表中选择的该目标表单。
S202,确定该目标表单的表单类型。
其中,该表单类型可以包括Table类型或者Form类型,例如,Excel表单即为一种Table类型的表单,Word表单即为一种Form类型的表单。
在一种可能的实现方式中,可以通过该目标表单的文件扩展名确定该表单类型,例如,当该目标表单的文件扩展名为.doc或者.docx时,可以确定该目标表单的表单类型为Form类型,当该目标表单的文件扩展名为.xls时,可以确定该目标表单的表单类型为Table类型,此处只是举例说明,本公开对此不作限定。
S203,从预先设置的识别规则中确定与该表单类型对应的目标识别规则。
其中,在该表单类型为Table类型时,该目标识别规则可以包括:确定该目标表单中是否包括第一目标行,该第一目标行不存在合并单元格;若该目标表单包括该第一目标行,则确定该第一目标行中是否包括第二目标行,该第二目标行存在连续预设数量的数据单元格;该数据单元格包括填充有数据的单元格;若确定该第一目标行中包括第二目标行,则确定第二目标行中的数据为该第一待定表单数据;或者,
确定该目标表单中是否包括第一目标列,该第一目标列不存在合并单元格;若该目标表单包括该第一目标列,则确定该第一目标列中是否包括第二目标列,该第二目标列存在连续预设数量的数据单元格;该数据单元格包括填充有数据的单元格;若确定该第一目标列中包括第二目标列,则确定第二目标列中的数据为该第一待定表单数据。
在该表单类型包括Form类型时,该目标识别规则包括:确定第三目标行,该第三目标行为该目标表单中的任一行;获取该第三目标行在该目标表单中对应的列数;计算该列数与2的比值;在根据该比值确定该列数被2整除时,将该第三目标行在该目标表单中对应的奇数列中的数据,确定为该第一待定表单数据,将该第三目标行在该目标表单中对应的偶数列中的数据,确定为非待定表单数据;在根据该比值确定该列数未被2整除时,确定该第三目标行的最后一列中的数据是否标记为该非待定表单数据,在该最后一列中的数据未标记为该非待定表单数据,将该第三目标行在该目标表单中对应的奇数列中的数据,确定为该第一待定表单数据;在该最后一列中的数据标记为该非待定表单数据,将该第三目标行中除该最后一列外的其余列中的奇数列中的数据,确定为该第一待定表单数据;或者,
确定第三目标列,该第三目标列为该目标表单中的任一列;获取该第三目标列在该目标表单中对应的行数;计算该行数与2的比值;在根据该比值确定该行数被2整除时,将该第三目标列在该目标表单中对应的奇数行中的数据,确定为该第一待定表单数据,将该第三目标列在该目标表单中对应的偶数行中的数据,确定为非待定表单数据;在根据该比值确定该行数未被2整除时,确定该第三目标列的最后一行中的数据是否标记为该非待定表单数据,在该最后一行中的数据未标记为该非待定表单数据,将该第三目标列在该目标表单中对应的奇数行中的数据,确定为该第一待定表单数据;在该最后一行中的数据标记为该非待定表单数据,将该第三目标列中除该最后一行外的其余行中的奇数行中的数据,确定为该第一待定表单数据。
S204,根据该目标识别规则从该目标表单中识别第一待定表单数据。
其中,该第一待定表单数据可以包括从该目标表单中获取的字符数据,例如,表1为文件名为“某科技大学学生信息登记表.xls”的Excel表单,表2为文件名为“某科技大学优秀研究生申请表.doc”的Word表单,在该目标表单为表1时,表1中的“姓名”、“身份证号”、“学号”、“学院”、“专业”、“入学日期”、“导师”即为该第一待定表单数据,在该目标表单为表2时,表2中的“姓名”、“性别”、“类别”、“学号”、“学院”、“导师”、“荣誉称号类别”、“个人事迹”、“导师意见”即为该第一待定表单数据。
本步骤的具体实现方式可以参考实施例1中S103中的相关描述,在此不再赘述。
另外,在一种可能的实现方式中,在根据该目标识别规则识别出该第一待定表单数据时,可以确定该第一待定表单数据即为该目标表单字段,但考虑到直接将该第一待定表单数据作为该目标表单字段时,数据源识别的准确率有待提高,因此,在另一种可能的实现方式中,为提高数据源识别的准确率,还可以根据预设字符数据库对通过目标识别规则确定的第一待定表单数据进行进一步地校验,这样可以根据目标识别规则和预设字符数据库两种数据源识别策略识别目标表单中的目标表单字段,具体地,可以通过执行S205至S209来确定该第一待定表单数据是否为目标表单字段。
S205,获取该第一待定表单数据对应的第一预设识别参数。
其中,该第一预设识别参数可以为在根据与表单类型对应的目标识别规则识别该第一待定表单数据时的评价参数,并且该第一预设识别参数可以包括预先设置的与该第一待定表单数据对应的权重参数。
S206,通过预设字符数据库从该目标表单中的每个单元格中识别第二待定表单数据,并获取该第二待定表单数据对应的第二预设识别参数。
其中,该预设字符数据库可以包括关键字数据库、标题数据库等,用户可以根据自己的实际业务需求自定义该预设字符数据库,需要说明的是,在该预设字符数据库包括多种数据库时(如关键字数据库、标题数据库等),第二预设识别参数可以为在根据预设字符数据库识别该第二待定表单数据时的评价参数,并且该第二预设识别参数可以包括预先设置的与该第二待定表单数据对应的权重参数。需要说明的是,在该预设字符数据库包括多种数据库时(如该预设字符数据库包括关键字数据库和标题数据库等),该第二预设识别参数也包括多个,并且每种预设字符数据库对应一个第二预设识别参数,并且,在预先设置该第二预设识别参数时,可以根据识别该第二待定表单数据的预设字符数据库不同设置不同的权重参数,例如,对于关键字数据库,在根据关键字数据库识别该第二待定表单数据时,可以将该第二待定表单数据的权重参数设置为0.2,对于标题数据库,考虑到在根据该标题数据库将该目标表单中某个单元格中的数据识别为标题时,该单元格中的数据即为非待定表单数据,因此,在根据标题数据库识别该第二待定表单数据时,需要将该权重参数设置为负数,例如,在根据标题数据库识别该第二待定表单数据时,可以将该第二待定表单数据的权重参数设置为-0.1。
S205以及S206的具体实现方式可以参考实施例1中S104中的相关描述,在此不再赘述。
S207,确定该第一待定表单数据在该目标表单中所处的目标单元格。
例如,在该目标表单为表2时,对于从表2中确定的第一待定表单数据“姓名”对应的目标单元格即为表2中第一行第一列对应的单元格,对于从表2中确定的第一待定表单数据“学院”对应的目标单元格即为表2中第二行第三列对应的单元格,此处只是举例说明,本公开对此不作限定。
S208,从该第二待定表单数据中确定位于该目标单元格的目标待定表单数据,并获取该目标待定表单数据对应的该第二预设识别参数。
例如,继续以表2为该目标表单为例,在该目标单元格为表2中第一行第一列对应的单元格时,可以从该第二待定表单数据中确定位于该目标单元格的该目标待定表单数据为“姓名”,在执行S206后,可以确定该第二待定表单数据“姓名”在该关键字数据库中的该第二预设识别参数为0.2(可根据步骤S104中的示例方法得出),该第二待定表单数据“姓名”在该标题数据库中的该第二预设识别参数为0(可根据步骤S104中的示例方法得出),因此,在本步骤中,可以直接获取到该目标待定表单数据“姓名”对应的两个该第二预设识别参数,此处只是举例说明,本公开对此不作限定。
S209,根据该第一预设识别参数和该第二预设识别参数确定该第一待定表单数据是否为目标表单字段。
其中,该目标表单字段可以包括制作该目标表单时预先设置的字符数据,例如,表1中的“姓名”、“身份证号”、“学号”等均为表1对应的该目标表单字段,表2中的“姓名”、“性别”、“学号”等均为表2对应的该目标表单字段。
在本步骤中,可以计算该第一预设识别参数和该第二预设识别参数的和,在该和大于或者等于预设识别评价阈值时,可以确定该第一待定表单数据即为该目标表单字段。
本步骤的具体实现方式可以参考实施例1中S104的相关描述,在此不再赘述。
在确定该目标表单字段后,可以根据该目标表单字段生成一个数据源,但考虑到仅根据目标表单字段生成的数据源记载的模板信息不够全面,因此,为生成一个完整的数据源,在一种可能的实现方式中,在从目标表单中识别出该目标表单字段后,还需识别该目标表单中每个单元格中的表单数据的字段类型,然后根据该目标表单字段和该字段类型生成一个完整的数据源,具体地,可以通过执行S210至S211识别该字段类型。
S210,通过预设符号数据库从该目标表单中确定包含字段符号的单元格。
其中,该预设符号数据库可以包括预先设置的字段符号数据库。
S211,从预设字段类型中获取该字段符号对应的目标字段类型。
其中,该预设字段类型可以包括文本类、多选类、单选类、时间类等,例如,可以将“姓名”、“身份证号”、“学号”等只含有文字的表单数据的字段类型识别为文本类,将“□博士□硕士”等含有字段符号“□”的表单数据识别为单选类,将“◎党员◎硕士”等含有字段符号“◎”的表单数据识别为多选类,将“2018-10-11”等含有字段符号“-”的表单数据识别为时间类。
本实施例中S210至S211的具体实现方式可以参考实施例1中S105中的相关描述,在此不再赘述。
S212,根据该目标表单字段、包含字段符号的单元格中的数据以及该目标字段类型生成该数据源。
其中,该数据源可以用于存储建立数据库时的模板信息,通常情况下,生成表单、统计图表等都需要依据数据源来生成。
采用上述方法,可以避免用户需要将表单中的字段一一导入来生成数据源的复杂操作,从而提高数据源的生成效率,并且可以将多种类型的表单识别为统一的数据源,进而提高数据源生成方法的通用性。
图3是根据一示例性实施例示出的一种生成数据源的装置的框图,如图3所示,该装置包括:
第一获取模块301,用于获取待识别的目标表单;
第一确定模块302,用于确定该目标表单的表单类型,并从预先设置的识别规则中确定与该表单类型对应的目标识别规则;
第一识别模块303,用于根据该目标识别规则从该目标表单中识别第一待定表单数据;
第二确定模块304,用于确定该第一待定表单数据是否为目标表单字段;
数据源生成模块305,用于在该第一待定表单数据为该目标表单字段时,根据该目标表单字段生成数据源。
可选地,在该表单类型包括Table类型时,该目标识别规则包括:
确定该目标表单中是否包括第一目标行,该第一目标行不存在合并单元格;若该目标表单包括该第一目标行,则确定该第一目标行中是否包括第二目标行,该第二目标行存在连续预设数量的数据单元格;该数据单元格包括填充有数据的单元格;若确定该第一目标行中包括该第二目标行,则确定该第二目标行中的数据为该第一待定表单数据;或者,
确定该目标表单中是否包括第一目标列,该第一目标列不存在合并单元格;若该目标表单包括该第一目标列,则确定该第一目标列中是否包括第二目标列,该第二目标列存在连续预设数量的数据单元格;该数据单元格包括填充有数据的单元格;若确定该第一目标列中包括该第二目标列,则确定该第二目标列中的数据为该第一待定表单数据。
可选地,在该表单类型包括Form类型时,该目标识别规则包括:确定第三目标行,该第三目标行为该目标表单中的任一行;获取该第三目标行在该目标表单中对应的列数;计算该列数与2的比值;在根据该比值确定该列数被2整除时,将该第三目标行在该目标表单中对应的奇数列中的数据,确定为该第一待定表单数据,将该第三目标行在该目标表单中对应的偶数列中的数据,确定为非待定表单数据;在根据该比值确定该列数未被2整除时,确定该第三目标行的最后一列中的数据是否标记为该非待定表单数据,在该最后一列中的数据未标记为该非待定表单数据,将该第三目标行在该目标表单中对应的奇数列中的数据,确定为该第一待定表单数据;在该最后一列中的数据标记为该非待定表单数据,将该第三目标行中除该最后一列外的其余列中的奇数列中的数据,确定为该第一待定表单数据;或者,
确定第三目标列,该第三目标列为该目标表单中的任一列;获取该第三目标列在该目标表单中对应的行数;计算该行数与2的比值;在根据该比值确定该行数被2整除时,将该第三目标列在该目标表单中对应的奇数行中的数据,确定为该第一待定表单数据,将该第三目标列在该目标表单中对应的偶数行中的数据,确定为非待定表单数据;在根据该比值确定该行数未被2整除时,确定该第三目标列的最后一行中的数据是否标记为该非待定表单数据,在该最后一行中的数据未标记为该非待定表单数据,将该第三目标列在该目标表单中对应的奇数行中的数据,确定为该第一待定表单数据;在该最后一行中的数据标记为该非待定表单数据,将该第三目标列中除该最后一行外的其余行中的奇数行中的数据,确定为该第一待定表单数据。
可选地,图4是根据图3所示实施例示出的一种生成数据源的装置的框图,如图4所示,该装置还包括:
第二获取模块306,用于获取该第一待定表单数据对应的第一预设识别参数;
第二识别模块307,用于通过预设字符数据库从该目标表单中的每个单元格中识别第二待定表单数据,并获取该第二待定表单数据对应的第二预设识别参数;
第三确定模块308,用于确定该第一待定表单数据在该目标表单中所处的目标单元格;
第四确定模块309,用于从该第二待定表单数据中确定位于该目标单元格的目标待定表单数据,并获取该目标待定表单数据对应的该第二预设识别参数;
该第二确定模块304,用于根据该第一预设识别参数和该第二预设识别参数确定该第一待定表单数据是否为目标表单字段。
可选地,图5是根据图4所示实施例示出的一种生成数据源的装置的框图,如图5所示,该装置还包括:
第五确定模块310,用于通过预设符号数据库从该目标表单中确定包含字段符号的单元格;
第三获取模块311,用于从预设字段类型中获取该字段符号对应的目标字段类型;
该数据源生成模块305,用于根据根据该目标表单字段、包含字段符号的单元格中的数据以及该目标字段类型生成该数据源。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
采用上述装置,可以避免用户需要将表单中的字段一一导入来生成数据源的复杂操作,从而提高数据源的生成效率,并且可以将多种类型的表单识别为统一的数据源,进而提高数据源生成方法的通用性。
图6是根据一示例性实施例示出的一种电子设备600的框图。如图6所示,该电子设备600可以包括:处理器601,存储器602。该电子设备600还可以包括多媒体组件603,输入/输出(I/O)接口604,以及通信组件605中的一者或多者。
其中,处理器601用于控制该电子设备600的整体操作,以完成上述的生成数据源的方法中的全部或部分步骤。存储器602用于存储各种类型的数据以支持在该电子设备600的操作,这些数据例如可以包括用于在该电子设备600上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器602可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件603可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器602或通过通信组件605发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口604为处理器601和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件605用于该电子设备600与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G或5G,NB-IOT(Narrow Band Internet of Things,窄带物联网),或者它们中一种或者多种的组合,因此相应的该通信组件605可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
在一示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的生成数据源的方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的生成数据源的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器602,上述程序指令可由电子设备600的处理器601执行以完成上述的生成数据源的方法。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

Claims (10)

1.一种生成数据源的方法,其特征在于,所述方法包括:
获取待识别的目标表单;
确定所述目标表单的表单类型,并从预先设置的识别规则中确定与所述表单类型对应的目标识别规则;
根据所述目标识别规则从所述目标表单中识别第一待定表单数据;
确定所述第一待定表单数据是否为目标表单字段;
在所述第一待定表单数据为所述目标表单字段时,根据所述目标表单字段生成数据源。
2.根据权利要求1所述的方法,其特征在于,在所述表单类型包括Table类型时,所述目标识别规则包括:
确定所述目标表单中是否包括第一目标行,所述第一目标行不存在合并单元格;若所述目标表单包括所述第一目标行,则确定所述第一目标行中是否包括第二目标行,所述第二目标行存在连续预设数量的数据单元格;所述数据单元格包括填充有数据的单元格;若确定所述第一目标行中包括所述第二目标行,则确定所述第二目标行中的数据为所述第一待定表单数据;或者,
确定所述目标表单中是否包括第一目标列,所述第一目标列不存在合并单元格;若所述目标表单包括所述第一目标列,则确定所述第一目标列中是否包括第二目标列,所述第二目标列存在连续预设数量的数据单元格;所述数据单元格包括填充有数据的单元格;若确定所述第一目标列中包括所述第二目标列,则确定所述第二目标列中的数据为所述第一待定表单数据。
3.根据权利要求1或2所述的方法,其特征在于,在所述确定所述第一待定表单数据是否为目标表单字段前,所述方法还包括:
获取所述第一待定表单数据对应的第一预设识别参数;
通过预设字符数据库从所述目标表单中的每个单元格中识别第二待定表单数据,并获取所述第二待定表单数据对应的第二预设识别参数;
确定所述第一待定表单数据在所述目标表单中所处的目标单元格;
从所述第二待定表单数据中确定位于所述目标单元格的目标待定表单数据,并获取所述目标待定表单数据对应的所述第二预设识别参数;
所述确定所述第一待定表单数据是否为目标表单字段包括:
根据所述第一预设识别参数和所述第二预设识别参数确定所述第一待定表单数据是否为目标表单字段。
4.根据权利要求3所述的方法,其特征在于,在所述根据所述目标表单字段生成数据源前,所述方法还包括:
通过预设符号数据库从所述目标表单中确定包含字段符号的单元格;
从预设字段类型中获取所述字段符号对应的目标字段类型;
所述根据所述目标表单字段生成数据源包括:
根据所述目标表单字段、包含字段符号的单元格中的数据以及所述目标字段类型生成所述数据源。
5.一种生成数据源的装置,其特征在于,所述装置包括:
第一获取模块,用于获取待识别的目标表单;
第一确定模块,用于确定所述目标表单的表单类型,并从预先设置的识别规则中确定与所述表单类型对应的目标识别规则;
第一识别模块,用于根据所述目标识别规则从所述目标表单中识别第一待定表单数据;
第二确定模块,用于确定所述第一待定表单数据是否为目标表单字段;
数据源生成模块,用于在所述第一待定表单数据为所述目标表单字段时,根据所述目标表单字段生成数据源。
6.根据权利要求5所述的装置,其特征在于,在所述表单类型包括Table类型时,所述目标识别规则包括:
确定所述目标表单中是否包括第一目标行,所述第一目标行不存在合并单元格;若所述目标表单包括所述第一目标行,则确定所述第一目标行中是否包括第二目标行,所述第二目标行存在连续预设数量的数据单元格;所述数据单元格包括填充有数据的单元格;若确定所述第一目标行中包括所述第二目标行,则确定所述第二目标行中的数据为所述第一待定表单数据;或者,
确定所述目标表单中是否包括第一目标列,所述第一目标列不存在合并单元格;若所述目标表单包括所述第一目标列,则确定所述第一目标列中是否包括第二目标列,所述第二目标列存在连续预设数量的数据单元格;所述数据单元格包括填充有数据的单元格;若确定所述第一目标列中包括所述第二目标列,则确定所述第二目标列中的数据为所述第一待定表单数据。
7.根据权利要求5或6所述的装置,其特征在于,所述装置还包括:
第二获取模块,用于获取所述第一待定表单数据对应的第一预设识别参数;
第二识别模块,用于通过预设字符数据库从所述目标表单中的每个单元格中识别第二待定表单数据,并获取所述第二待定表单数据对应的第二预设识别参数;
第三确定模块,用于确定所述第一待定表单数据在所述目标表单中所处的目标单元格;
第四确定模块,用于从所述第二待定表单数据中确定位于所述目标单元格的目标待定表单数据,并获取所述目标待定表单数据对应的所述第二预设识别参数;
所述第二确定模块,用于根据所述第一预设识别参数和所述第二预设识别参数确定所述第一待定表单数据是否为目标表单字段。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第五确定模块,用于通过预设符号数据库从所述目标表单中确定包含字段符号的单元格;
第三获取模块,用于从预设字段类型中获取所述字段符号对应的目标字段类型;
所述数据源生成模块,用于根据所述目标表单字段、包含字段符号的单元格中的数据以及所述目标字段类型生成所述数据源。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-4中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-4中任一项所述方法的步骤。
CN201811644365.2A 2018-12-29 2018-12-29 生成数据源的方法、装置、存储介质及电子设备 Active CN109815235B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811644365.2A CN109815235B (zh) 2018-12-29 2018-12-29 生成数据源的方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811644365.2A CN109815235B (zh) 2018-12-29 2018-12-29 生成数据源的方法、装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN109815235A true CN109815235A (zh) 2019-05-28
CN109815235B CN109815235B (zh) 2021-10-15

Family

ID=66603836

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811644365.2A Active CN109815235B (zh) 2018-12-29 2018-12-29 生成数据源的方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN109815235B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110704526A (zh) * 2019-09-27 2020-01-17 北京深度制耀科技有限公司 不良事件的信息的获取方法、装置、设备及存储介质
CN113010510A (zh) * 2019-12-20 2021-06-22 中国移动通信集团安徽有限公司 业务识别方法、装置、系统及计算设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1758247A (zh) * 2004-06-01 2006-04-12 微软公司 指定工作簿的行列作为数据源的方法、系统和设备
CN101320370A (zh) * 2008-05-16 2008-12-10 崔志明 基于查询接口连接图的深层网页数据源分类管理方法
CN103761243A (zh) * 2013-12-18 2014-04-30 深圳市大成天下信息技术有限公司 目标文档检测方法和设备
CN105760450A (zh) * 2016-02-04 2016-07-13 浪潮通用软件有限公司 一种表单文件解析方法及装置
US9514115B2 (en) * 2014-12-31 2016-12-06 Shih-Hsin Chen Method for creating form validation program and corresponding form interface according to result set metadata
CN108763176A (zh) * 2018-04-10 2018-11-06 达而观信息科技(上海)有限公司 一种文档处理方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1758247A (zh) * 2004-06-01 2006-04-12 微软公司 指定工作簿的行列作为数据源的方法、系统和设备
CN101320370A (zh) * 2008-05-16 2008-12-10 崔志明 基于查询接口连接图的深层网页数据源分类管理方法
CN103761243A (zh) * 2013-12-18 2014-04-30 深圳市大成天下信息技术有限公司 目标文档检测方法和设备
US9514115B2 (en) * 2014-12-31 2016-12-06 Shih-Hsin Chen Method for creating form validation program and corresponding form interface according to result set metadata
CN105760450A (zh) * 2016-02-04 2016-07-13 浪潮通用软件有限公司 一种表单文件解析方法及装置
CN108763176A (zh) * 2018-04-10 2018-11-06 达而观信息科技(上海)有限公司 一种文档处理方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110704526A (zh) * 2019-09-27 2020-01-17 北京深度制耀科技有限公司 不良事件的信息的获取方法、装置、设备及存储介质
CN110704526B (zh) * 2019-09-27 2022-07-19 北京深度制耀科技有限公司 不良事件的信息的获取方法、装置、设备及存储介质
CN113010510A (zh) * 2019-12-20 2021-06-22 中国移动通信集团安徽有限公司 业务识别方法、装置、系统及计算设备
CN113010510B (zh) * 2019-12-20 2024-03-19 中国移动通信集团安徽有限公司 业务识别方法、装置、系统及计算设备

Also Published As

Publication number Publication date
CN109815235B (zh) 2021-10-15

Similar Documents

Publication Publication Date Title
Finin et al. Annotating named entities in Twitter data with crowdsourcing
Walker et al. An improved boxplot for univariate data
CN105009064B (zh) 使用语言和空间模型的触摸键盘
US8775931B2 (en) Spell check function that applies a preference to a spell check algorithm based upon extensive user selection of spell check results generated by the algorithm, and associated handheld electronic device
US20150113388A1 (en) Method and apparatus for performing topic-relevance highlighting of electronic text
CN109446328A (zh) 一种文本识别方法、装置及其存储介质
CN103488423A (zh) 实现电子阅读器中书签功能的方法和装置
CN105512347A (zh) 一种基于地理主题模型的信息处理方法
CN109815235A (zh) 生成数据源的方法、装置、存储介质及电子设备
Upadhyay et al. Semantic knowledge extraction from research documents
CN106055526B (zh) 页面标识方法和装置
CN108846069A (zh) 一种基于标记语言的文档执行方法及装置
Castellani Ribeiro et al. An urban data profiler
CN110008445A (zh) 事件抽取方法及装置、电子设备
CN106970758A (zh) 电子文档操作处理方法、装置和电子设备
EP1975808A1 (en) Spell check function having a character replacement spell check algorithm that applies a preference based upon proximity of the characters replacing one another, and associated handheld electronic device
CN112329409B (zh) 一种单元格颜色转换方法、装置及电子设备
Calle-Martin et al. Stylometry and authorship attribution: introduction to the special issue
CN111881311A (zh) 一种图表类型的智能推荐方法、装置、设备及存储介质
CN110457430A (zh) 一种文本的溯源检测方法、装置及设备
US10747794B2 (en) Smart search for annotations and inking
CN107818152A (zh) 一种植物检索方法和系统
Kulczycki et al. Entropy of subordinate shift spaces
JPWO2014170965A1 (ja) 文書処理方法、文書処理装置および文書処理プログラム
Nazar et al. Corpus-based methods for recognizing the gender of anthroponyms

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
GR01 Patent grant
GR01 Patent grant