交易流水文件解析方法、装置、终端设备及存储介质与流程
未命名
07-19
阅读:95
评论:0
1.本发明涉及文件解析领域,尤其涉及交易流水文件解析方法、装置、终端设备及存储介质。
背景技术:
2.交易流水是银行账户或支付机构账户的交易流水明细。各家银行账户或支付机构提供客户交易流水证明,生成的电子流水明细文件内容一般包括银行或支付机构、账户名称、账号、交易明细列表等信息,为快速地、便捷地获取到上述信息,需要寻求一种统一的交易流水文件的解析方法。
3.现有对交易流水解析的方法之一是基于ocr技术对流水文档进行快速扫描并获得相关信息,但由于ocr技术容易受到图像明暗、字体大小、颜色等影响,导致解析出来的信息准确度不高。另一种方式,则是基于pdf转html技术对流水文档进行转换获取相关信息,但是由于pdf转html技术容易受到表格表现形式、文字排版格式等影响,存在转换后的html与原始表格差异较大的问题,覆盖面受限。
4.因此,如何快速、准确地解析不同银行的交易流水文件是当前亟待解决的问题。
技术实现要素:
5.本技术的主要目的在于提供一种交易流水文件解析方法、装置、终端设备及存储介质,旨在解决如何快速、准确地解析不同银行的交易流水文件的问题。
6.为实现上述目的,本技术提供交易流水文件解析方法,应用于文件解析技术领域,所述交易流水文件解析方法包括以下步骤:
7.通过文本解析工具,将交易流水文件解析为若干行数据,并从所述若干行数据中提取关键字及对应的行号;
8.将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息;
9.对所述交易流水文件进行格式化处理;
10.根据所述交易流水信息和格式化处理后的交易流水文件,解析得到交易流水明细。
11.可选的,所述解析模板至少包括流水关键字、账户关键字、卡号关键字,所述将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息步骤包括:
12.遍历所述解析模板,并将所述解析模板中的流水关键字依次与所述关键字及对应的行号进行匹配,得到第一匹配结果;
13.若所述第一匹配结果为成功,则获取匹配成功的解析模板的账户关键字和卡号关键字;
14.将所述匹配成功的解析模板的账户关键字,与所述关键字及对应的行号进行匹
配,得到第二匹配结果;
15.若所述第二匹配结果为成功,则根据所述匹配成功的解析模板的账户关键字,从所述关键字及对应的行号中截取账户字符串并去除空格;
16.将所述匹配成功的解析模板的卡号关键字,与所述关键字及对应的行号进行匹配,得到第三匹配结果;
17.若所述第三匹配结果为成功,则根据所述匹配成功的解析模板的卡号关键字,从所述关键字及对应的行号中截取卡号字符串并去除空格。
18.可选的,所述对所述交易流水文件进行格式化处理的步骤包括:
19.从所述若干行数据中获取表格对应的解析行数据;
20.根据所述解析行数据建立二维坐标系;
21.根据所述二维坐标系,格式化处理所述解析行数据的行;
22.根据所述二维坐标系,格式化处理所述解析行数据的表格单元;
23.根据所述二维坐标系,格式化处理所述解析行数据的表头。
24.可选的,所述根据所述二维坐标系,格式化处理所述解析行数据的行的步骤包括:
25.依次遍历所述解析行数据的行;
26.当所述解析行数据的行在所述二维坐标系中的横坐标和纵坐标符合预设换行条件时,将所述行数据进行换行格式处理。
27.可选的,所述根据所述二维坐标系,格式化处理所述解析行数据的表格单元的步骤包括:
28.依次遍历所述解析行数据中的表格单元;
29.当相邻单元格在所述二维坐标系的横坐标和纵坐标符合预设合并条件时,将相邻表格单元及对应元素进行表格单元合并格式处理。
30.可选的,所述根据所述二维坐标系,格式化处理所述解析行数据的表头的步骤包括:
31.依次遍历所述解析行数据中的元素的坐标;
32.若所述元素的坐标与表头的坐标符合预设坐标更改条件时,更改所述元素的坐标与表头的坐标。
33.可选的,所述根据所述二维坐标系,格式化处理所述解析行数据的表格单元的步骤之前还包括:
34.从所述解析行数据中解析行数据的表头。
35.本技术实施案例还提出一种交易流水文件解析装置,所述交易流水文件解析装置包括:
36.提取模块,用于通过文本解析工具,将交易流水文件解析为若干行数据,并从所述若干行数据中提取关键字及对应的行号;
37.保存模块,用于将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息;
38.格式模块,用于对所述交易流水文件进行格式化处理;
39.展示模块,用于根据所述交易流水信息和格式化处理后的交易流水文件,解析得到交易流水明细并展示。
40.本技术实施案例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的交易流水文件解析程序,所述交易流水文件解析程序被所述处理器执行时实现所述交易流水文件解析方法的步骤。
41.本技术实施案例还提出一种存储介质,所述存储介质上存储有交易流水文件解析程序,所述交易流水文件解析程序被处理器执行时实现所述交易流水文件解析方法的步骤。
42.本技术提出的交易流水文件解析方法、装置、终端设备及存储介质。通过文本解析工具,将交易流水文件解析为若干行数据,并从所述若干行数据中提取关键字及对应的行号;将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息;对所述交易流水文件进行格式化处理;根据所述交易流水信息和格式化处理后的交易流水文件,解析得到交易流水明细并展示。基于本技术,通过将交易流水文件与不同银行的交易流水模板进行匹配,确定存储模板类型,从而获取到对应的交易流水信息,并对交易流水文件进行格式化处理,从而得到交易流水明细,达到了方便、快捷、准确地解析不同银行的交易流水文件的效果。
附图说明
43.图1为本技术交易流水文件解析装置所属终端设备的功能模块示意图;
44.图2为本技术交易流水文件解析方法第一示例性实施例的流程示意图;
45.图3为本技术交易流水文件解析方法第二示例性实施例的流程示意图;
46.图4为本技术交易流水文件解析方法第三示例性实施例的流程示意图。
47.本技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
48.应当理解,此处所描述的具体实施案例仅仅用以解释本技术,并不用于限定本技术。
49.本技术实施例的主要解决方案是通过将不同银行的交易流水的解析模板发送到数据库进行存储;通过文本解析工具,将交易流水文件解析为若干行数据,并从所述若干行数据中提取关键字及对应的行号;将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息;对所述交易流水文件进行格式化处理;根据所述交易流水信息和格式化处理后的交易流水文件,解析得到交易流水明细并展示。基于本方案,通过将交易流水文件与不同银行的交易流水模板进行匹配,确定存储模板类型,从而获取到对应的交易流水信息,并对交易流水文件进行格式化处理,从而获取到交易流水明细并展示,达到了方便、快捷、准确的解析不同银行的交易流水文件的效果。
50.具体地,参照图1,图1为本技术交易流水文件解析装置所属终端设备的功能模块示意图。该交易流水文件解析装置为基于终端设备的、能够进行交易流水文件解析,从而达到获取交易流水明细的装置,其可以通过硬件或软件的形式承载于终端设备上。
51.在本实施例中,该交易流水文件解析装置所属终端设备至少包括输出模块110、处理器120、存储器130以及通信模块140。
52.存储器130中存储有操作系统以及交易流水文件解析程序,所述交易流水文件解析装置可以将不同银行的交易流水的解析模板发送到数据库进行存储;通过文本解析工具,将交易流水文件解析为若干行数据,并从所述若干行数据中提取关键字及对应的行号;将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息;对所述交易流水文件进行格式化处理;根据所述交易流水信息和格式化处理后的交易流水文件,解析得到交易流水明细并展示等信息存储于该存储器130中;输出模块110可为显示屏等。通信模块140可以包括wifi模块、移动通信模块以及蓝牙模块等,通过通信模块140与外部设备或服务器进行通信。
53.其中,存储器130中的交易流水文件解析程序,所述交易流水文件解析程序被处理器执行时实现以下步骤:
54.将不同银行的交易流水的解析模板发送到数据库进行存储;
55.通过文本解析工具,将交易流水文件解析为若干行数据,并从所述若干行数据中提取关键字及对应的行号;
56.将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息;
57.对所述交易流水文件进行格式化处理;
58.根据所述交易流水信息和格式化处理后的交易流水文件,解析得到交易流水明细。
59.进一步地,存储器130中的交易流水文件解析程序被处理器执行时还实现以下步骤:
60.遍历所述解析模板,并将所述解析模板中的流水关键字依次与所述关键字及对应的行号进行匹配,得到第一匹配结果;
61.若所述第一匹配结果为成功,则获取匹配成功的解析模板的账户关键字和卡号关键字;
62.将所述匹配成功的解析模板的账户关键字,与所述关键字及对应的行号进行匹配,得到第二匹配结果;
63.若所述第二匹配结果为成功,则根据所述匹配成功的解析模板的账户关键字,从所述关键字及对应的行号中截取账户字符串并去除空格;
64.将所述匹配成功的解析模板的卡号关键字,与所述关键字及对应的行号进行匹配,得到第三匹配结果;
65.若所述第三匹配结果为成功,则根据所述匹配成功的解析模板的卡号关键字,从所述关键字及对应的行号中截取卡号字符串并去除空格。
66.进一步地,存储器130中的交易流水文件解析程序被处理器执行时还实现以下步骤:
67.从所述若干行数据中获取表格对应的解析行数据;
68.根据所述解析行数据建立二维坐标系;
69.根据所述二维坐标系,格式化处理所述解析行数据的行;
70.根据所述二维坐标系,格式化处理所述解析行数据的表格单元;
71.根据所述二维坐标系,格式化处理所述解析行数据的表头。
72.进一步地,存储器130中的交易流水文件解析程序被处理器执行时还实现以下步骤:
73.依次遍历所述解析行数据的行;
74.当所述解析行数据的行在所述二维坐标系中的横坐标和纵坐标符合预设换行条件时,将所述行数据进行换行格式处理。
75.进一步地,存储器130中的交易流水文件解析程序被处理器执行时还实现以下步骤:
76.依次遍历所述解析行数据中的表格单元;
77.当相邻单元格在所述二维坐标系的横坐标和纵坐标符合预设合并条件时,将相邻表格单元及对应元素进行表格单元合并格式处理。
78.进一步地,存储器130中的交易流水文件解析程序被处理器执行时还实现以下步骤:
79.依次遍历所述解析行数据中的元素的坐标;
80.若所述元素的坐标与表头的坐标符合预设坐标更改条件时,更改所述元素的坐标与表头的坐标。
81.进一步地,存储器130中的交易流水文件解析程序被处理器执行时还实现以下步骤:
82.从所述解析行数据中解析行数据的表头。
83.基于上述终端设备架构但不限于上述架构,提出本技术方法实施例。
84.参照图2,图2为交易流水文件解析方法第一示例性实施例的流程示意图。所述交易流水文件解析方法包括:
85.步骤s110,将不同银行的交易流水的解析模板发送到数据库进行存储;
86.具体地,任一个银行的交易流水的解析模板存储在数据库中至少包括模板名称、流水文件关键字、账户关键字、卡号关键字,解析方法名称。其中,模板名称为不同银行的银行名称,流水文件关键字、账户关键字、卡号关键字是一个列表,列表中的元素是字典类型。其中,流水文件关键字列表中元素的字典的键是行号line和关键字keyword;账户关键字的列表中元素的字典的键是行号line、账户开始关键字startkeyword、账户结束关键字endkeyword;卡号关键字的列表中元素的字典的键是行号line、卡号开始关键字startkeyword、卡号结束关键字endkeyword,开发人员通过各家银行的交易流水文件进行规则整理,并保存到数据库中。
87.步骤s120,通过文本解析工具,将交易流水文件解析为若干行数据,并从所述若干行数据中提取关键字及对应的行号;
88.具体地,文本解析工具包括但不限于spire或者pdfbox解析当页所有文本,将交易流水文件解析为行数据,二维坐标系中包括横轴和纵轴,任一行数据的横轴相差如果小于负5倍字体高度,同时,y轴差大于字体高度;或者,x轴差小于负5倍字体高度,同时,y轴差小于负1倍字体高度;或者,x轴差大于2倍字体高度,同时,y轴差大于3倍字体高度;或者,y轴为负数,并与上一元素有交集;或者元素与两个元素有交集,并且这两个元素间无交集的情况,则将该元素剔除。元素表示如下:(left,right,upper,lower,cell,fontsize);其中,
left、right、upper、lower分别代表文字左、右、上、下位置,cell代表文字内容,fontsize代表字体大小。
89.步骤s130,将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息;
90.具体地,不同银行的交易流水解析模板包括了模板名称、流水文件关键字、账户关键字、卡号关键字,解析方法名称,不同银行的交易流水的解析模板是从数据库获取得到的。所述关键字及对应行号和多个不同的银行的交易流水的解析模板中的流水文件关键字进行匹配,若匹配成功,则确认匹配成功的交易流水解析模板为当前交易流水文件对应的解析模板,根据确认的交易流水解析模板提供的关键字,获取交易流水信息,交易流水信息,交易流水文件对应的解析模板中的账户关键字、卡号关键字,将所述交易流水文件对应的解析模板中的账户关键字,与所述关键字及对应的行号进行匹配,得到第二匹配成功的结果;第二匹配成功的结果包括了账户开始关键字、账户结束关键字,从所述关键字及对应的行号中截取所述第二匹配成功的结果之间的字符串,去除空白后作为账户;将所述交易流水文件对应的解析模板中的卡号关键字,与所述关键字及对应的行号进行匹配,得到第三匹配成功的结果,第三匹配成功的结果包括了卡号开始关键字、卡号结束关键字;从所述关键字及对应的行号中截取所述第三匹配成功的结果之间的字符串,去除空白后作为卡号。如果匹配不成功,就匹配下一个银行的交易流水的解析模板,直到能够确认交易流水文件对应的解析模板。
91.步骤s140,对所述交易流水文件进行格式化处理;
92.具体地,格式化处理交易流水文件的解析文件,具体包括表头的格式化,行的格式化及表格单元的格式化。具体解析方式为从所述若干行数据中获取表格对应的解析行数据;根据所述解析行数据建立二维坐标系;根据所述二维坐标系,格式化处理所述解析行数据的行;根据所述二维坐标系,格式化处理所述解析行数据的表格单元;根据所述二维坐标系,格式化处理所述解析行数据的表头。
93.步骤s150,根据所述交易流水信息和格式化处理后的交易流水文件,解析得到交易流水明细并展示。
94.具体地,通过表头将表格内容解析为map结构的数据,将表头作为键,将对应表格单元作为值,依次遍历每一行数据的表格单元,得到为交易流水结构化数据并输出展示,交易流水结构化数据如下结构所示,其中record1......recordn代表每一行解析得到的流水序号,key和value分别是对应流水序号的行数据的值及对应的表头元素:
95.{record1:[{key1:value1},{key2:value2}]};
[0096]
{record2:[{key2:value2},{key3:value3}]};
[0097]
{recordn:[{keyn:valuen},{keyn+1:valuen+1}]}。
[0098]
本实施例通过上述方案,具体通过将不同银行的交易流水的解析模板发送到数据库进行存储;通过文本解析工具,将交易流水文件解析为若干行数据,并从所述若干行数据中提取关键字及对应的行号;将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息;对所述交易流水文件进行格式化处理;根据所述交易流水信息和格式化处理后的交易流水文件,解析得到交易流水明细并展示。基于本方案,通过将交易流水文件与不同银行
的交易流水模板进行匹配,确定存储模板类型,从而获取到对应的交易流水信息,并对交易流水文件进行格式化处理,从而获取到交易流水明细并展示。达到了方便、快捷、准确地解析不同银行的交易流水文件的效果。
[0099]
进一步地,参照图3,图3为交易流水文件解析方法第二示例性实施例的流程示意图,所述解析模板至少包括流水关键字、账户关键字、卡号关键字,所述将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息的步骤包括:
[0100]
步骤s1301,遍历所述解析模板,并将所述解析模板中的流水关键字依次与所述关键字及对应的行号进行匹配,得到第一匹配结果;
[0101]
具体地,解析模板的流水关键字的值是一个列表结构,列表中包括了多个字典元素,字典元素的键有行号line,关键字keyword。行号是对应关键字所在行,关键字的值可以是银行名称,账号,户名等与流水账户相关信息。从流水文件提取得到的关键字及行号,与解析模板的流水关键字进行匹配,如果匹配成功,则说明此匹配模板适用于当前解析的流水文件。
[0102]
步骤s1302,若所述第一匹配结果为成功,则获取匹配成功的解析模板的账户关键字和卡号关键字;
[0103]
具体地,第一匹配结果为成功,即当前流水解析文件的关键字与解析模板的流水关键字匹配成功,可以确定匹配成功的交易流水文件对应的解析模板,并通过交易流水文件对应的解析模板解析当前流水文件,保证了模板的准确性和可用性。
[0104]
步骤s1303,将所述匹配成功的解析模板的账户关键字,与所述关键字及对应的行号进行匹配,得到第二匹配结果;
[0105]
具体地,交易流水文件对应的解析模板中的账户关键字是以字典形式存储的,账户关键字包括了账户开始关键字、账户结束关键字、行号等信息,将当前所述关键字及对应的行号与账户关键字中的字典的键和值进行匹配,得到匹配成功的结果及对应行号,如果匹配不成功,就跳转到s1301,将所述解析模板中的流水关键字依次与所述关键字及对应的行号进行匹配,得到第一匹配结果进行下一个解析模板的匹配。
[0106]
步骤s1304,若所述第二匹配结果为成功,则根据所述匹配成功的解析模板的账户关键字,从所述关键字及对应的行号中截取账户字符串并去除空格;
[0107]
具体地,第二匹配成功的结果是作为账户开始关键字和账户结束关键字,因此,从所述关键字及对应的行号中截取所述第二匹配成功的结果之间的字符串,可以得到账户的字符串,通过对账号的字符串去除空格操作,得到交易流水文件的账号;如果匹配不成功,就跳转到s1301,将所述解析模板中的流水关键字依次与所述关键字及对应的行号进行匹配,得到第一匹配结果进行下一个解析模板的匹配。
[0108]
步骤s1305,将所述匹配成功的解析模板的卡号关键字,与所述关键字及对应的行号进行匹配,得到第三匹配结果;
[0109]
具体地,交易流水文件对应的解析模板中的卡号关键字是以字典存储的,卡号关键字包括了卡号开始关键字,卡号结束关键字及对应行号,将当前所述关键字及对应的行号与卡号关键字中的字典的键和值进行匹配,得到匹配成功的结果及对应行号;如果匹配不成功,就跳转到s1301,将所述解析模板中的流水关键字依次与所述关键字及对应的行号
进行匹配,得到第一匹配结果进行下一个解析模板的匹配。
[0110]
步骤s1306,若所述第三匹配结果为成功,则根据所述匹配成功的解析模板的卡号关键字,从所述关键字及对应的行号中截取卡号字符串并去除空格。
[0111]
具体地,第三匹配成功的结果是作为卡号开始关键字和卡号结束关键字,因此,从所述关键字及对应的行号中截取所述第三匹配成功的结果之间的字符串,可以得到卡号的字符串,通过对卡号的字符串去除空格操作,得到交易流水文件的卡号;如果匹配不成功,就跳转到s1301,将所述解析模板中的流水关键字依次与所述关键字及对应的行号进行匹配,得到第一匹配结果进行下一个解析模板的匹配。
[0112]
本实施例通过上述方案,具体通过遍历所述解析模板,并将所述解析模板中的流水关键字依次与所述关键字及对应的行号进行匹配,得到第一匹配结果;若所述第一匹配结果为成功,则获取匹配成功的解析模板的账户关键字和卡号关键字;将所述匹配成功的解析模板的账户关键字,与所述关键字及对应的行号进行匹配,得到第二匹配结果;若所述第二匹配结果为成功,则根据所述匹配成功的解析模板的账户关键字,从所述关键字及对应的行号中截取账户字符串并去除空格;将所述匹配成功的解析模板的卡号关键字,与所述关键字及对应的行号进行匹配,得到第三匹配结果;若所述第三匹配结果为成功,则根据所述匹配成功的解析模板的卡号关键字,从所述关键字及对应的行号中截取卡号字符串并去除空格。基于本方案,实现了获取交易流水的卡号和账户,达到了对交易流水文件的交易流水相关信息准确提取的效果。
[0113]
进一步的,参照图4,图4为交易流水文件解析方法第三示例性实施例的流程示意图。所述对所述交易流水文件进行格式化处理的步骤包括:
[0114]
步骤s1501,从所述若干行数据中获取表格对应的解析行数据;
[0115]
具体地,若干行数据是通过文件解析工具spire或者pdfbox解析当页所有文本,将交易流水文件解析为行数据。
[0116]
步骤s1502,根据所述解析行数据建立二维坐标系;
[0117]
具体地,根据解析行数据建立二维坐标系,其中二维坐标系包括了x轴和y轴,行数据中的元素在表格单元中,表格单元包括了上、下、左、右位置,每一个元素可以表示为(left,right,upper,lower,cell,fontsize)。其中,left、right、upper、lower表示表格单元的左、右、上、下的横轴x轴位置和纵轴y轴的位置,cell代表表格单元中的文字内容,fontsize代表文字的字体大小。
[0118]
步骤s1503,根据所述二维坐标系,格式化处理所述解析行数据的行;
[0119]
具体地,在二维坐标系中,行数据的换行条件为x轴差如果小于负5倍字体高度,同时,y轴差大于字体高度;或者,x轴差小于负5倍字体高度,同时,y轴差小于负1倍字体高度;或者,x轴差大于2倍字体高度,同时,y轴差大于3倍字体高度;或者,y轴为负数,并与上一元素有交集;或者元素与两个元素有交集,并且这两个元素间无交集的情况,则将该元素剔除。
[0120]
步骤s1504,根据所述二维坐标系,格式化处理所述解析行数据的表格单元;
[0121]
具体地,迭代遍历每行数据中的单元格,若横轴相交,且纵轴不同才合并单元格,若字体不同,则删除之前数据,保留小字体的内容。判断合并条件合并单元格包括如下内容:合并单元格内容,即拼接两元素的cell作为新值;处理x轴区间,取两元素的(left,
right)的并集作为新值;处理y轴区间,取两元素的(upper,lower)的并集作为新值。
[0122]
步骤s1505,根据所述二维坐标系,格式化处理所述解析行数据的表头。
[0123]
具体地,各解析方法分别定义了日期、金额数据字典,按行迭代处理,若一行字段内容中同时唯一存在日期和金额,则解析到表头。解析表格行:迭代按行处理每一个单元格。如果单元格与多个表头元素x轴相交,则去除;提取与金额、日期表头x轴有唯一交集的单元格行数据,并且与金额表头有交集的单元格内容全是数字,与日期表头有交集的单元格内容以数字开头。完善表头坐标,遍历表格行数据,分别处理如下:判断行内的元素与表头行的x轴是否存在交集;坐标相交时扩大坐标范围,取left最小的,取right最大的,更新对应表头元素的left、right;获取到与表头无交集的元素;获取到与元素无交集的表头;将未匹配上的表头与单元格数据做位置对比,对比单元格与表头左右共四个坐标点的距离,得到距离最小值的表头,更新对应表头元素的left、right。
[0124]
本技术通过上述方案,具体通过从所述若干行数据中获取表格对应的解析行数据;根据所述解析行数据建立二维坐标系;根据所述二维坐标系,格式化处理所述解析行数据的行;根据所述二维坐标系,格式化处理所述解析行数据的表格单元;根据所述二维坐标系,格式化处理所述解析行数据的表头。
[0125]
基于本方案,通过坐标系将行数据进行了格式化处理,方便流水明细结构数据的生成。
[0126]
此外,本技术实施例还提出一种交易流水文件解析装置,所述交易流水文件解析装置包括:
[0127]
保存模块,用于将不同银行的交易流水的解析模板发送到数据库进行存储;
[0128]
解析模块,用于通过文本解析工具,将交易流水文件解析为若干行数据,并从所述若干行数据中提取关键字及对应的行号;
[0129]
匹配模块,用于将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息;
[0130]
格式模块,用于对所述交易流水文件进行格式化处理;
[0131]
输出模块,用于根据所述交易流水信息和格式化处理后的交易流水文件,解析得到交易流水明细。
[0132]
此外,本技术实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的交易流水文件解析程序,所述交易流水文件解析程序被所述处理器执行时实现所述交易流水文件解析方法的步骤。
[0133]
由于本交易流水文件解析程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
[0134]
此外,本技术实施例还提出一种可读存储介质,所述存储介质上存储有程序,所述交易流水文件解析程序被处理器执行时实现如上所述的交易流水文件解析方法的步骤。
[0135]
由于本交易流水文件解析程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
[0136]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排
他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
[0137]
上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
[0138]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本技术每个实施例的方法。
[0139]
以上仅为本技术的优选实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
技术特征:
1.一种交易流水文件解析方法,其特征在于,所述交易流水文件解析方法包括以下步骤:通过文本解析工具,将交易流水文件解析为若干行数据,并从所述若干行数据中提取关键字及对应的行号;将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息;对所述交易流水文件进行格式化处理;根据所述交易流水信息和格式化处理后的交易流水文件,解析得到交易流水明细。2.根据权利要求1所述的交易流水文件解析方法,其特征在于,所述解析模板至少包括流水关键字、账户关键字、卡号关键字,所述将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息的步骤包括:遍历所述解析模板,并将所述解析模板中的流水关键字依次与所述关键字及对应的行号进行匹配,得到第一匹配结果;若所述第一匹配结果为成功,则获取匹配成功的解析模板的账户关键字和卡号关键字;将所述匹配成功的解析模板的账户关键字,与所述关键字及对应的行号进行匹配,得到第二匹配结果;若所述第二匹配结果为成功,则根据所述匹配成功的解析模板的账户关键字,从所述关键字及对应的行号中截取账户字符串并去除空格;将所述匹配成功的解析模板的卡号关键字,与所述关键字及对应的行号进行匹配,得到第三匹配结果;若所述第三匹配结果为成功,则根据所述匹配成功的解析模板的卡号关键字,从所述关键字及对应的行号中截取卡号字符串并去除空格。3.根据权利要求1所述的交易流水文件解析方法,其特征在于,所述对所述交易流水文件进行格式化处理的步骤包括:从所述若干行数据中获取表格对应的解析行数据;根据所述解析行数据建立二维坐标系;根据所述二维坐标系,格式化处理所述解析行数据的行;根据所述二维坐标系,格式化处理所述解析行数据的表格单元;根据所述二维坐标系,格式化处理所述解析行数据的表头。4.根据权利要求3所述的交易流水文件解析方法,其特征在于,所述根据所述二维坐标系,格式化处理所述解析行数据的行的步骤包括:依次遍历所述解析行数据的行;当所述解析行数据的行在所述二维坐标系中的横坐标和纵坐标符合预设换行条件时,将所述行数据进行换行格式处理。5.根据权利要求3所述的交易流水文件解析方法,其特征在于,所述根据所述二维坐标系,格式化处理所述解析行数据的表格单元的步骤包括:依次遍历所述解析行数据中的表格单元;
当相邻单元格在所述二维坐标系的横坐标和纵坐标符合预设合并条件时,将相邻表格单元及对应元素进行表格单元合并格式处理。6.根据权利要求3所述的交易流水文件解析方法,其特征在于,所述根据所述二维坐标系,格式化处理所述解析行数据的表头的步骤包括:依次遍历所述解析行数据中的元素的坐标;若所述元素的坐标与表头的坐标符合预设坐标更改条件时,更改所述元素的坐标与表头的坐标。7.根据权利要求3所述的交易流水文件解析方法,其特征在于,所述根据所述二维坐标系,格式化处理所述解析行数据的表格单元的步骤之前还包括:从所述解析行数据中解析行数据的表头。8.一种交易流水文件解析装置,其特征在于,所述交易流水文件解析装置包括:提取模块,用于通过文本解析工具,将交易流水文件解析为若干行数据,并从所述若干行数据中提取关键字及对应的行号;保存模块,用于将所述关键字及对应的行号,与预先配置的不同银行的交易流水的解析模板依次进行匹配,确定所述交易流水文件对应的解析模板,并获取交易流水信息;格式模块,用于对所述交易流水文件进行格式化处理;展示模块,用于根据所述交易流水信息和格式化处理后的交易流水文件,解析得到交易流水明细。9.一种终端设备,其特征在于,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的交易流水文件解析程序,所述交易流水文件解析程序被所述处理器执行时实现如权利要求1-7中任一项所述交易流水文件解析方法的步骤。10.一种存储介质,其特征在于,所述存储介质上存储有交易流水文件解析程序,所述交易流水文件解析程序被处理器执行时实现如权利要求1-7中任一项所述交易流水文件解析方法的步骤。
技术总结
本发明公开一种交易流水文件解析方法、装置、终端设备及存储介质,该方法包括:通过文本解析工具,将交易流水文件解析为若干行数据,并从若干行数据中提取关键字及对应的行号,与不同银行的交易流水的解析模板依次进行匹配,确定交易流水文件对应的解析模板,并获取交易流水信息;对交易流水文件进行格式化处理;根据交易流水信息和格式化处理后的交易流水文件,解析得到交易流水明细。本申请实现了将交易流水文件与不同银行的交易流水模板进行匹配,从而对交易流水文件进行解析,得到交易流水明细,达到了方便、快捷、准确地解析不同银行的交易流水文件的效果。的交易流水文件的效果。的交易流水文件的效果。
技术研发人员:王虎
受保护的技术使用者:招商银行股份有限公司
技术研发日:2023.04.25
技术公布日:2023/7/18
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
