欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法和裝置的制造方法

文檔序號(hào):10655050閱讀:453來源:國(guó)知局
一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法和裝置的制造方法
【專利摘要】本申請(qǐng)?zhí)峁┮环N面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法和裝置,所述方法包括通過分解方法,對(duì)待處理字符串報(bào)文進(jìn)行分解,對(duì)待處理字符串報(bào)文中的描述業(yè)務(wù)數(shù)據(jù)部分與描述報(bào)文結(jié)構(gòu)的部分進(jìn)行區(qū)分。通過將待處理字符串報(bào)文的報(bào)文結(jié)構(gòu)部分與業(yè)務(wù)數(shù)據(jù)部分分開,使業(yè)務(wù)處理人員可以僅關(guān)注和處理業(yè)務(wù)數(shù)據(jù)部分,而無需關(guān)注報(bào)文結(jié)構(gòu)部分,因此便于業(yè)務(wù)處理人員更加方便、高效的定位與分析業(yè)務(wù)數(shù)據(jù)。提高了業(yè)務(wù)人員定位和處理業(yè)務(wù)數(shù)據(jù)的效率。
【專利說明】
一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法和裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,具體涉及一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法和裝置。
【背景技術(shù)】
[0002]報(bào)文是商業(yè)銀行實(shí)現(xiàn)交易的基本數(shù)據(jù)單元。在商業(yè)銀行交易系統(tǒng)軟件測(cè)試過程中,業(yè)務(wù)人員需要模擬交易報(bào)文進(jìn)行測(cè)試。由于商業(yè)銀行交易報(bào)文具備其特有格式,如果業(yè)務(wù)人員對(duì)報(bào)文格式不熟悉,很難完成對(duì)交易報(bào)文的模擬。所以,為了完成對(duì)交易的測(cè)試,業(yè)務(wù)人員往往需要花很長(zhǎng)時(shí)間去學(xué)習(xí)特定報(bào)文的格式。使得業(yè)務(wù)處理人員定位和處理業(yè)務(wù)數(shù)據(jù)的效率低。

【發(fā)明內(nèi)容】

[0003]有鑒于此,本發(fā)明實(shí)施例提供一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法和裝置,以提高業(yè)務(wù)處理人員定位和處理業(yè)務(wù)數(shù)據(jù)的效率。
[0004]為實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供如下技術(shù)方案:
[0005]—種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法,包括:
[0006]通過分解方法,對(duì)待處理字符串報(bào)文進(jìn)行分解,對(duì)待處理字符串報(bào)文中的描述業(yè)務(wù)數(shù)據(jù)部分與描述報(bào)文結(jié)構(gòu)的部分進(jìn)行區(qū)分。
[0007]優(yōu)選的,上述面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法中,所述對(duì)待處理字符串報(bào)文中的描述業(yè)務(wù)數(shù)據(jù)部分與描述報(bào)文結(jié)構(gòu)的部分進(jìn)行區(qū)分,包括:
[0008]將所述待處理字符串報(bào)文中的數(shù)據(jù)對(duì)象部分導(dǎo)入預(yù)建立的數(shù)據(jù)對(duì)象字典中,所述數(shù)據(jù)對(duì)象字典的存儲(chǔ)數(shù)據(jù)包括:數(shù)據(jù)對(duì)象ID和數(shù)據(jù)對(duì)象的值;
[0009]將所述待處理字符串報(bào)文中的描述子部分導(dǎo)入預(yù)建立的描述子字典中,所述描述子字典的存儲(chǔ)數(shù)據(jù)包括:描述子ID和描述子的值。
[0010]優(yōu)選的,上述面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法中,所述將所述待處理字符串報(bào)文中的數(shù)據(jù)對(duì)象部分導(dǎo)入預(yù)建立的數(shù)據(jù)對(duì)象字典中,包括:
[0011]SlOl、建立數(shù)據(jù)對(duì)象字典和掃描子字典;
[0012]S102、初始化待處理字符串報(bào)文的當(dāng)前位置為第一個(gè)字符,執(zhí)行步驟S103;
[0013]S103、從當(dāng)前位置掃描待處理字符串報(bào)文直至掃描到一個(gè)數(shù)據(jù)對(duì)象,如果到達(dá)所述待處理字符串報(bào)文的末尾,則轉(zhuǎn)步驟S107;否則繼續(xù)執(zhí)行步驟S104;
[0014]S104、判斷所述數(shù)據(jù)對(duì)象字典中是否存在掃描到的所述數(shù)據(jù)對(duì)象,如果是,執(zhí)行步驟S106 ;如果否,執(zhí)行步驟S105 ;
[0015]步驟S105、為掃描到的數(shù)據(jù)對(duì)象分配一個(gè)ID,并將該數(shù)據(jù)對(duì)象加入數(shù)據(jù)對(duì)象字典,轉(zhuǎn)步驟S106;
[0016]S106、將所述數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,并轉(zhuǎn)步驟S103;
[0017]S107、判斷所述數(shù)據(jù)對(duì)象字典中的條目數(shù)是否為0,如果是,報(bào)錯(cuò)并結(jié)束全部流程,否則,輸出所述數(shù)據(jù)對(duì)象字典。
[0018]優(yōu)選的,上述面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法中,所述將所述待處理字符串報(bào)文中的描述子部分導(dǎo)入預(yù)建立的描述子字典中,包括:
[0019]S108、初始化所述待處理字符串報(bào)文的當(dāng)前位置為第一個(gè)字符;執(zhí)行步驟S109;
[0020]S109、判斷所述當(dāng)前位置是否為所述字符串的末尾,如果是,執(zhí)行步驟S113;否則,執(zhí)行步驟SI 10;
[0021]步驟S110、從當(dāng)前位置開始掃描所述待處理字符串報(bào)文,直至掃描到一個(gè)數(shù)據(jù)對(duì)象,將從所述當(dāng)前位置到所述數(shù)據(jù)對(duì)象之間的子字符串記為一個(gè)描述子,執(zhí)行步驟Slll;
[0022]步驟SI11、判斷所述描述子是否存在于所述描述子字典中,如果是,執(zhí)行步驟SI 13;否則,執(zhí)行步驟SI 12;
[0023]步驟SI12、為所述描述子分配一個(gè)新ID,并將所述描述子加入描述子字典,執(zhí)行步驟SI12,;
[0024]步驟S112’、將所述數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,執(zhí)行步驟S109;
[0025]步驟SI 13、輸出描述子字典。
[0026]優(yōu)選的,上述面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法中,還包括:
[0027]步驟S114、建立一個(gè)標(biāo)記隊(duì)列,所述標(biāo)記隊(duì)列的元素為數(shù)據(jù)對(duì)象ID和描述子ID;
[0028]當(dāng)將所述待處理字符串報(bào)文中的數(shù)據(jù)對(duì)象部分導(dǎo)入預(yù)建立的數(shù)據(jù)對(duì)象字典中、將所述待處理字符串報(bào)文中的描述子部分導(dǎo)入預(yù)建立的描述子字典中之后,還包括:
[0029]步驟S115、將描述子ID和數(shù)據(jù)對(duì)象ID依次插入所述標(biāo)記隊(duì)列的尾部。
[0030]優(yōu)選的,上述面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法中,還包括:
[0031]依據(jù)所述標(biāo)記隊(duì)列、數(shù)據(jù)對(duì)象字典和描述子字典對(duì)所述待處理字符串報(bào)文進(jìn)行重組,得到輸出字符串。
[0032]優(yōu)選的,上述面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法中,依據(jù)所述標(biāo)記隊(duì)列、數(shù)據(jù)對(duì)象字典和描述子字典對(duì)所述待處理字符串報(bào)文進(jìn)行重組,得到輸出字符串,包括:
[0033]步驟S116、初始化輸出字符串為空字符串;初始化標(biāo)記隊(duì)列的當(dāng)前位置為I,執(zhí)行步驟SI 17;
[0034]S117、判斷所述標(biāo)記隊(duì)列的當(dāng)前位置是否超過所述標(biāo)記隊(duì)列的大小,如果是,執(zhí)行步驟SI 19,否則,執(zhí)行步驟SI 18;
[0035]步驟S118、從標(biāo)記隊(duì)列中取出當(dāng)前位置的元素,如果該元素是數(shù)據(jù)對(duì)象ID,則根據(jù)所述數(shù)據(jù)對(duì)象ID在數(shù)據(jù)對(duì)象字典中查找對(duì)應(yīng)的值,在所述輸出字符串的尾部加上該值;如果該7Π素是描述子ID,則根據(jù)所述描述子ID在描述子字典中查找對(duì)應(yīng)值,在所述輸出字符串的尾部加上該值,將所述標(biāo)記隊(duì)列的當(dāng)前位置加I,重復(fù)執(zhí)行步驟S117;
[0036]步驟S119、輸出所述輸出字符串。
[0037]一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置,包括:
[0038]分解單元,用于通過分解方法,對(duì)待處理字符串報(bào)文進(jìn)行分解,對(duì)待處理字符串報(bào)文中的描述業(yè)務(wù)數(shù)據(jù)部分與描述報(bào)文結(jié)構(gòu)的部分進(jìn)行區(qū)分。
[0039]優(yōu)選的,上述面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置中,所述分解單元,包括:
[0040]子分解單元,用于將所述待處理字符串報(bào)文中的數(shù)據(jù)對(duì)象部分導(dǎo)入預(yù)建立的數(shù)據(jù)對(duì)象字典中,將所述待處理字符串報(bào)文中的描述子部分導(dǎo)入預(yù)建立的描述子字典中;
[0041]第一存儲(chǔ)單元,用于存儲(chǔ)預(yù)建立的數(shù)據(jù)對(duì)象字典,所述數(shù)據(jù)對(duì)象字典的存儲(chǔ)數(shù)據(jù)包括:數(shù)據(jù)對(duì)象ID和數(shù)據(jù)對(duì)象的值;
[0042]第二存儲(chǔ)單元,用于存儲(chǔ)預(yù)建立的描述子字典,所述描述子字典的存儲(chǔ)數(shù)據(jù)包括:描述子ID和描述子的值。
[0043]優(yōu)選的,上述面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置中,所述子分解單元,包括:
[0044]字典建立單元,用于建立數(shù)據(jù)對(duì)象字典和掃描子字典;
[0045]第一初始化單元,用于初始化待處理字符串報(bào)文的當(dāng)前位置為第一個(gè)字符,向所述第一掃描單元輸出觸發(fā)信號(hào);
[0046]第一掃描單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,從當(dāng)前位置掃描待處理字符串報(bào)文直至掃描到一個(gè)數(shù)據(jù)對(duì)象,如果到達(dá)所述待處理字符串報(bào)文的末尾,向報(bào)錯(cuò)單元輸出觸發(fā)信號(hào),否則向第一匹配單元輸出觸發(fā)信號(hào);
[0047]第一匹配單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,判斷所述數(shù)據(jù)對(duì)象字典中是否存在掃描到的所述數(shù)據(jù)對(duì)象,如果是,向第一當(dāng)前位置更新單元輸出觸發(fā)信號(hào),否則,向第一數(shù)據(jù)導(dǎo)入單元輸出觸發(fā)信號(hào);
[0048]第一數(shù)據(jù)導(dǎo)入單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,為掃描到的數(shù)據(jù)對(duì)象分配一個(gè)ID,并將該數(shù)據(jù)對(duì)象加入數(shù)據(jù)對(duì)象字典,向所述第一當(dāng)前位置更新單元輸出觸發(fā)信號(hào);
[0049]第一當(dāng)前位置更新單元,用于將所述數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,向所述第一掃描單元輸出觸發(fā)信號(hào);
[0050]報(bào)錯(cuò)單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,判斷所述數(shù)據(jù)對(duì)象字典中的條目數(shù)是否為O,如果是,報(bào)錯(cuò)并結(jié)束全部流程,否則,輸出所述數(shù)據(jù)對(duì)象字典。
[0051]優(yōu)選的,上述面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置中,所述子分解單元,還包括:
[0052]第二初始化單元,用于初始化所述待處理字符串報(bào)文的當(dāng)前位置為第一個(gè)字符,向當(dāng)前位置判斷單元輸出觸發(fā)信號(hào);
[0053]當(dāng)前位置判斷單元,用于判斷所述當(dāng)前位置是否為所述字符串的末尾,如果是,向描述子字典輸出單元輸出觸發(fā)信號(hào),否則,向第二掃描單元輸出觸發(fā)信號(hào);
[0054]所述第二掃描單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,從當(dāng)前位置開始掃描所述待處理字符串報(bào)文,直至掃描到一個(gè)數(shù)據(jù)對(duì)象,將從所述當(dāng)前位置到所述數(shù)據(jù)對(duì)象之間的子字符串記為一個(gè)描述子,向第二匹配單元輸出觸發(fā)信號(hào);
[0055]所述第二匹配單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,判斷該描述子是否存在于所述描述子字典中,如果是,向描述子字典輸出單元輸出觸發(fā)信號(hào),否則,向第二數(shù)據(jù)導(dǎo)入單元輸出觸發(fā)信號(hào);
[0056]第二數(shù)據(jù)導(dǎo)入單元,用于為所述描述子分配一個(gè)新ID,并將所述描述子加入描述子字典,向第二當(dāng)前位置更新單元輸出觸發(fā)信號(hào);
[0057]第二當(dāng)前位置更新單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,將所述數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,向所述當(dāng)前位置判斷單元輸出觸發(fā)信號(hào);
[0058]描述子字典輸出單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,輸出描述子字典。
[0059]優(yōu)選的,上述面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置中,子分解單元還包括:
[0060]標(biāo)記單元,用于建立一個(gè)標(biāo)記隊(duì)列,將描述子ID和數(shù)據(jù)對(duì)象ID依次插入所述標(biāo)記隊(duì)列的尾部。[0061 ] 優(yōu)選的,上述面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置中,還包括:
[0062]重組單元,用于依據(jù)所述標(biāo)記隊(duì)列、數(shù)據(jù)對(duì)象字典和描述子字典對(duì)所述待處理字符串報(bào)文進(jìn)行重組,得到輸出字符串。
[0063]優(yōu)選的,上述面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置中,所述重組單元包括:
[0064]第三初始化單元,用于初始化輸出字符串為空字符串;初始化標(biāo)記隊(duì)列的當(dāng)前位置為I,向隊(duì)列判斷單元輸出觸發(fā)信號(hào);
[0065]隊(duì)列判斷單元,用于判斷所述標(biāo)記隊(duì)列的當(dāng)前位置是否超過所述標(biāo)記隊(duì)列的大小,如果是,向字符串輸出單元輸出觸發(fā)信號(hào),否則,向元素提取單元輸出觸發(fā)信號(hào);
[0066]元素提取單元,用于從標(biāo)記隊(duì)列中取出當(dāng)前位置的元素,如果該元素是數(shù)據(jù)對(duì)象ID,則根據(jù)所述數(shù)據(jù)對(duì)象ID在數(shù)據(jù)對(duì)象字典中查找對(duì)應(yīng)的值,在所述輸出字符串的尾部加上該值;如果該元素是描述子ID,則根據(jù)所述描述子ID在描述子字典中查找對(duì)應(yīng)值,在所述輸出字符串的尾部加上該值,將所述標(biāo)記隊(duì)列的當(dāng)前位置加I,向所述隊(duì)列判斷單元輸出觸發(fā)信號(hào);
[0067]字符串輸出單元,用于輸出所述輸出字符串。
[0068]基于上述技術(shù)方案,本發(fā)明實(shí)施例提供的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法和裝置,通過將待處理字符串報(bào)文的報(bào)文結(jié)構(gòu)部分與業(yè)務(wù)數(shù)據(jù)部分分開,使業(yè)務(wù)處理人員可以僅關(guān)注和處理業(yè)務(wù)數(shù)據(jù)部分,而無需關(guān)注報(bào)文結(jié)構(gòu)部分,因此便于業(yè)務(wù)處理人員更加方便、高效的定位與分析業(yè)務(wù)數(shù)據(jù)。提高了業(yè)務(wù)人員定位和處理業(yè)務(wù)數(shù)據(jù)的效率。
【附圖說明】
[0069]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0070]圖1為本申請(qǐng)實(shí)施例公開的一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法的流程圖;
[0071]圖2為本申請(qǐng)實(shí)施例公開的數(shù)據(jù)對(duì)象部分的提取流程示意圖;
[0072]圖3為本申請(qǐng)實(shí)施例公開的描述子部分的提取流程示意圖;
[0073]圖4為本申請(qǐng)實(shí)施例公開的一種分解后的字符串報(bào)文的重組方法;
[0074]圖5為本申請(qǐng)實(shí)施例公開的一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置的結(jié)構(gòu)示意圖;
[0075]圖6為本申請(qǐng)實(shí)施例公開的一種子分解單元的數(shù)據(jù)對(duì)象提取部分的結(jié)構(gòu)示意圖;
[0076]圖7為本申請(qǐng)實(shí)施例公開的一種子分解單元的描述子提取部分的結(jié)構(gòu)示意圖;
[0077]圖8為本申請(qǐng)另一實(shí)施例公開的一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置的結(jié)構(gòu)示意圖;
[0078]圖9為本申請(qǐng)實(shí)施例公開的一種重組單元的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0079]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0080]
【申請(qǐng)人】通過研究發(fā)現(xiàn),事實(shí)上,報(bào)文的主要內(nèi)容包括業(yè)務(wù)數(shù)據(jù)和報(bào)文組織結(jié)構(gòu)兩部分,業(yè)務(wù)人員在進(jìn)行測(cè)試時(shí)僅需要關(guān)注業(yè)務(wù)數(shù)據(jù)即可,而對(duì)報(bào)文中組織結(jié)構(gòu)的那部分內(nèi)容無需關(guān)注。
[0081]針對(duì)于此,本發(fā)明包含了一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文分解和重構(gòu)方法,其特點(diǎn)在于:可以對(duì)包含業(yè)務(wù)數(shù)據(jù)的待處理字符串報(bào)文進(jìn)行處理,通過分解方法,將所述待處理字符串報(bào)文中描述業(yè)務(wù)數(shù)據(jù)的部分與描述報(bào)文結(jié)構(gòu)的部分進(jìn)行區(qū)分;通過重構(gòu)方法,可以還原報(bào)文字符串。使得待處理字符串報(bào)文中的業(yè)務(wù)數(shù)據(jù)與結(jié)構(gòu)數(shù)據(jù)的分離問題,便于業(yè)務(wù)處理人員更加方便、高效的定位與分析業(yè)務(wù)數(shù)據(jù)。
[0082]為了方便用戶理解所述待處理字符串報(bào)文的結(jié)構(gòu)組成,本申請(qǐng)先對(duì)所述待處理字符串的結(jié)構(gòu)組成進(jìn)行說明:
[0083]每個(gè)待處理字符串報(bào)文均包含兩類基礎(chǔ)元素:描述子(descriptor)和數(shù)據(jù)對(duì)象(data object)。
[0084]所述描述子定義的是待處理字符串報(bào)文中描述報(bào)文結(jié)構(gòu)的部分。
[0085]所述數(shù)據(jù)對(duì)象定義的是待處理字符串報(bào)文中具備業(yè)務(wù)含義、描述業(yè)務(wù)數(shù)據(jù)的部分。
[0086]所述描述子和數(shù)據(jù)對(duì)象均包括兩個(gè)屬性:ID和值。
[0087]所述描述子與數(shù)據(jù)對(duì)象的ID都應(yīng)當(dāng)是非空且唯一的。
[0088]所述描述子是待處理字符串報(bào)文的子字符串,在分解前未知,所述描述子的值可以是空字符串或者非空字符串。
[0089]所述數(shù)據(jù)對(duì)象是待處理字符串報(bào)文的子字符串,在分解前已知,數(shù)據(jù)對(duì)象的值必須是非空字符串。
[0090]圖1為本申請(qǐng)實(shí)施例公開的一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法的流程圖,參見圖1,本申請(qǐng)實(shí)施例公開的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法包括:
[0091]A:獲取待處理字符串報(bào)文數(shù)據(jù);
[0092]B:通過分解方法,對(duì)待處理字符串報(bào)文進(jìn)行分解,對(duì)待處理字符串報(bào)文中的描述業(yè)務(wù)數(shù)據(jù)部分與描述報(bào)文結(jié)構(gòu)的部分進(jìn)行區(qū)分;
[0093]具體的該部分可以包括:通過采用分解法,對(duì)待處理字符串報(bào)文進(jìn)行分解,將分解得到的所述待處理字符串報(bào)文中的數(shù)據(jù)對(duì)象部分導(dǎo)入預(yù)建立的數(shù)據(jù)對(duì)象字典中,所述數(shù)據(jù)對(duì)象字典的存儲(chǔ)數(shù)據(jù)包括:數(shù)據(jù)對(duì)象ID和數(shù)據(jù)對(duì)象的值;將所述待處理字符串報(bào)文中的描述子部分導(dǎo)入預(yù)建立的描述子字典中,所述描述子字典的存儲(chǔ)數(shù)據(jù)包括:描述子ID和描述子的值。
[0094]C:輸出區(qū)分后的業(yè)務(wù)數(shù)據(jù)部分和報(bào)文結(jié)構(gòu)部分。
[0095]參見本申請(qǐng)上述實(shí)施例公開的技術(shù)方案,該方案通過將待處理字符串報(bào)文的報(bào)文結(jié)構(gòu)部分與業(yè)務(wù)數(shù)據(jù)部分分開,使業(yè)務(wù)處理人員可以僅關(guān)注和處理業(yè)務(wù)數(shù)據(jù)部分,而無需關(guān)注報(bào)文結(jié)構(gòu)部分,因此便于業(yè)務(wù)處理人員更加方便、高效的定位與分析業(yè)務(wù)數(shù)據(jù)。提高了業(yè)務(wù)人員定位和處理業(yè)務(wù)數(shù)據(jù)的效率。
[0096]圖2為本申請(qǐng)實(shí)施例公開的數(shù)據(jù)對(duì)象部分的提取流程示意圖;
[0097]具體的,參見圖2,上述方法中,所述將所述待處理字符串報(bào)文中的數(shù)據(jù)對(duì)象部分導(dǎo)入預(yù)建立的數(shù)據(jù)對(duì)象字典中,包括:
[0098]SlOl、建立數(shù)據(jù)對(duì)象字典和掃描子字典,將建立的數(shù)據(jù)對(duì)象字典和掃描子字典作為所述預(yù)建立的數(shù)據(jù)對(duì)象字典和掃描子字典;
[0099]S102、初始化待處理字符串報(bào)文的當(dāng)前位置為第一個(gè)字符,執(zhí)行步驟S103;
[0100]在本步驟中,將所述待處理字符串報(bào)文的第一個(gè)字符作為所述待處理字符串報(bào)文的當(dāng)前處理位置(即,當(dāng)前位置)。
[0101]S103、從當(dāng)前位置掃描待處理字符串報(bào)文直至掃描到一個(gè)數(shù)據(jù)對(duì)象,如果到達(dá)所述待處理字符串報(bào)文的末尾,則轉(zhuǎn)步驟S107;否則繼續(xù)執(zhí)行步驟S104;
[0102]在本步驟中,由確定的當(dāng)前位置開始,對(duì)所述待處理字符串報(bào)文進(jìn)行掃描,直至掃描到數(shù)據(jù)對(duì)象為止,由于所述數(shù)據(jù)對(duì)象在對(duì)所述待處理字符串報(bào)文進(jìn)行分解之前就已知的,因此,可實(shí)現(xiàn)判斷是否掃描到所述數(shù)據(jù)對(duì)象。
[0103]S104、判斷所述數(shù)據(jù)對(duì)象字典中是否存在掃描到的所述數(shù)據(jù)對(duì)象,如果是,執(zhí)行步驟S106 ;如果否,執(zhí)行步驟S105 ;
[0104]在本步驟中,需要判斷掃描到的數(shù)據(jù)對(duì)象是否已經(jīng)存儲(chǔ)在所述數(shù)據(jù)對(duì)象字典中,當(dāng)判斷結(jié)果為是時(shí),則表明對(duì)本次掃描到的對(duì)象數(shù)據(jù)的已經(jīng)提取完畢;
[0105]步驟S105、為掃描到的數(shù)據(jù)對(duì)象分配一個(gè)ID,并將該數(shù)據(jù)對(duì)象加入數(shù)據(jù)對(duì)象字典,轉(zhuǎn)步驟S106;
[0106]在本步驟中,當(dāng)判斷掃描到的數(shù)據(jù)對(duì)象未包含在所述數(shù)據(jù)對(duì)象字典中時(shí),對(duì)該數(shù)據(jù)對(duì)象分配一個(gè)唯一的ID,并將該數(shù)據(jù)對(duì)象加入至所述數(shù)據(jù)對(duì)象字典中。
[0107]S106、將所述數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,并轉(zhuǎn)步驟S103;
[0108]在本步驟中,設(shè)置所述當(dāng)前位置為數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符,掃描到第一個(gè)數(shù)據(jù)對(duì)象后,并對(duì)該數(shù)據(jù)對(duì)象進(jìn)行上述處理后,還需對(duì)該待處理字符串報(bào)文的后續(xù)部分進(jìn)行掃描,掃描后續(xù)字符串中的數(shù)據(jù)對(duì)象,因此,當(dāng)所述待處理字符串報(bào)文掃描到第一個(gè)數(shù)據(jù)對(duì)象后,將該數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,繼續(xù)對(duì)所述待處理字符串報(bào)文的后續(xù)部分進(jìn)行掃描。
[0109]S107、判斷所述數(shù)據(jù)對(duì)象字典中的條目數(shù)是否為0,如果是,報(bào)錯(cuò)并結(jié)束全部流程,否則,輸出所述數(shù)據(jù)對(duì)象字典;
[0110]在本步驟中,當(dāng)對(duì)所述待處理字符串報(bào)文的全部字段均掃描完成后,對(duì)所述數(shù)據(jù)對(duì)象字典中的元素?cái)?shù)量進(jìn)行判斷,當(dāng)條目數(shù)為O時(shí)(所述數(shù)據(jù)對(duì)象字典中無數(shù)據(jù)對(duì)象時(shí)),表明未掃描到所述待處理字符串報(bào)文所包含的數(shù)據(jù)對(duì)象,系統(tǒng)進(jìn)行報(bào)錯(cuò),如果所述條目數(shù)不為O,則表征數(shù)據(jù)對(duì)象提取過程正常,輸出所述數(shù)據(jù)對(duì)象字典。
[0111]圖3為本申請(qǐng)實(shí)施例公開的描述子部分的提取流程示意圖;
[0112]當(dāng)然,本申請(qǐng)除了對(duì)所述數(shù)據(jù)對(duì)象部分的提取過程進(jìn)行詳細(xì)說明之外,本申請(qǐng)還對(duì)所述描述子部分的提取過程進(jìn)行了詳細(xì)說明,參見圖3,所述描述子部分的提取過程包括:
[0113]S108、初始化所述待處理字符串報(bào)文的當(dāng)前位置為第一個(gè)字符;執(zhí)行步驟S109;
[0114]本步驟與所述步驟S102類似,均為將所述待處理字符串報(bào)文的第一個(gè)字符作為所述待處理字符串報(bào)文的當(dāng)前處理位置(即,當(dāng)前位置)。
[0115]S109、判斷所述當(dāng)前位置是否為所述字符串的末尾,如果是,執(zhí)行步驟S113;否則,執(zhí)行步驟SI 10;
[0116]在本步驟中,當(dāng)所述當(dāng)前位置為所述字符串的末尾時(shí),表示描述子提取已經(jīng)完成;
[0117]步驟S110、從當(dāng)前位置開始掃描所述待處理字符串報(bào)文,直至掃描到一個(gè)數(shù)據(jù)對(duì)象,將從所述當(dāng)前位置到所述數(shù)據(jù)對(duì)象之間的子字符串記為一個(gè)描述子,執(zhí)行步驟Slll;
[0118]在本步驟中,由確定的當(dāng)前位置開始,對(duì)所述待處理字符串報(bào)文進(jìn)行掃描,直至掃描到數(shù)據(jù)對(duì)象為止,本次掃描的當(dāng)前位置與掃描到的所述數(shù)據(jù)對(duì)象之間的字符串即為描述子。
[0119]步驟Sll1、判斷所述描述子是否存在于所述描述子字典中,如果是,執(zhí)行步驟SI 12’;否則,執(zhí)行步驟SI 12;
[0120]步驟SI12、為所述描述子分配一個(gè)新ID,并將所述描述子加入描述子字典,執(zhí)行步驟SI12,;
[0121 ]在本步驟中,當(dāng)判斷獲取的描述子未包含在所述描述子字典中時(shí),對(duì)描述子分配一個(gè)唯一的ID,并將該描述子加入至所述描述子字典中。
[0122]步驟S112’、將所述數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,執(zhí)行步驟S109;
[0123]在本步驟中,設(shè)置所述當(dāng)前位置為當(dāng)前數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符,掃描到第一個(gè)數(shù)據(jù)對(duì)象后,并對(duì)得到的描述子進(jìn)行上述處理后,還需讀取所述待處理字符串報(bào)文的后續(xù)部分的描述子,因此,當(dāng)所述待處理字符串報(bào)文掃描到第一個(gè)數(shù)據(jù)對(duì)象后,將該數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,繼續(xù)對(duì)所述待處理字符串報(bào)文的后續(xù)部分進(jìn)行掃描。
[0124]步驟S113、輸出描述子字典。
[0125]可以理解的是,進(jìn)一步的,本申請(qǐng)還對(duì)所述數(shù)據(jù)對(duì)象和描述子的提取的先后順序進(jìn)行了限定,即,先進(jìn)行所述數(shù)據(jù)對(duì)象提取后進(jìn)行掃描子提取。并且,對(duì)所述待處理字符串報(bào)文進(jìn)行上述分解處理后,為了方便后續(xù)過程中對(duì)分解結(jié)果進(jìn)行處理,本申請(qǐng)上述實(shí)施例公開的方法還可以包括:
[0126]步驟S114、建立一個(gè)標(biāo)記隊(duì)列,所述標(biāo)記隊(duì)列的元素為數(shù)據(jù)對(duì)象ID和描述子ID;
[0127]優(yōu)選的,所述步驟3114位于步驟3107與步驟3108之間;
[0128]當(dāng)將所述待處理字符串報(bào)文中的數(shù)據(jù)對(duì)象部分導(dǎo)入預(yù)建立的數(shù)據(jù)對(duì)象字典中、將所述待處理字符串報(bào)文中的描述子部分導(dǎo)入預(yù)建立的描述子字典中之后,還包括:
[0129]步驟S115、將描述子ID和數(shù)據(jù)對(duì)象ID依次插入所述標(biāo)記隊(duì)列的尾部。
[0130]進(jìn)一步的,所述步驟SI 15可以具體位于所述步驟SI 12與步驟SI 12’之間。
[0131]除了對(duì)上述待處理字符串報(bào)文進(jìn)行分解之外,為了方便系統(tǒng)讀取,本申請(qǐng)上述實(shí)施例公開的方法還可以包括對(duì)分解后的待處理字符串報(bào)文進(jìn)行重組,具體的,該過程可以為:
[0132]依據(jù)所述標(biāo)記隊(duì)列、數(shù)據(jù)對(duì)象字典和描述子字典對(duì)所述待處理字符串報(bào)文進(jìn)行重組,得到輸出字符串。
[0133]圖4為本申請(qǐng)實(shí)施例公開的一種分解后的字符串報(bào)文的重組方法;
[0134]具體的,本申請(qǐng)還公開了一種分解后的字符串報(bào)文重組的具體過程,參見圖4,包括:
[0135]步驟SI16、初始化輸出字符串為空字符串;初始化標(biāo)記隊(duì)列的當(dāng)前位置為I,執(zhí)行步驟SI 17;
[0136]步驟S117、判斷所述標(biāo)記隊(duì)列的當(dāng)前位置是否超過所述標(biāo)記隊(duì)列的大小,如果是,執(zhí)行步驟SI 19,否則,執(zhí)行步驟SI 18;
[0137]步驟S118、從標(biāo)記隊(duì)列中取出當(dāng)前位置的元素,如果該元素是數(shù)據(jù)對(duì)象ID,則根據(jù)所述數(shù)據(jù)對(duì)象ID在所述數(shù)據(jù)對(duì)象字典中查找與該ID對(duì)應(yīng)的值,并在所述輸出字符串的尾部加上該值;如果該元素是描述子ID,則根據(jù)所述描述子ID在描述子字典中查找該ID對(duì)應(yīng)值,在所述輸出字符串的尾部加上該值;最后,將所述標(biāo)記隊(duì)列的當(dāng)前位置加I,重復(fù)執(zhí)行步驟S117;
[0138]步驟S119、輸出所述輸出字符串。
[0139]與上述方法相對(duì)應(yīng),本申請(qǐng)還公開了一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置,兩者可相互借鑒,參見圖5,該裝置包括:
[0140]采集單元100,用于獲取待處理字符串報(bào)文數(shù)據(jù);
[0141 ]分解單元200,用于通過分解方法,對(duì)待處理字符串報(bào)文進(jìn)行分解,對(duì)待處理字符串報(bào)文中的描述業(yè)務(wù)數(shù)據(jù)部分與描述報(bào)文結(jié)構(gòu)的部分進(jìn)行區(qū)分;
[0142]輸出單元300,用于輸出區(qū)分后的業(yè)務(wù)數(shù)據(jù)部分和報(bào)文結(jié)構(gòu)部分。
[0143]與上述方法相對(duì)應(yīng),參見圖5,所述分解單元200可以包括:
[0144]子分解單元210,用于將所述待處理字符串報(bào)文中的數(shù)據(jù)對(duì)象部分導(dǎo)入預(yù)建立的數(shù)據(jù)對(duì)象字典中,將所述待處理字符串報(bào)文中的描述子部分導(dǎo)入預(yù)建立的描述子字典中;
[0145]第一存儲(chǔ)單元220,用于存儲(chǔ)預(yù)建立的數(shù)據(jù)對(duì)象字典,所述數(shù)據(jù)對(duì)象字典的存儲(chǔ)數(shù)據(jù)包括:數(shù)據(jù)對(duì)象ID和數(shù)據(jù)對(duì)象的值;
[0146]第二存儲(chǔ)單元230,用于存儲(chǔ)預(yù)建立的描述子字典,所述描述子字典的存儲(chǔ)數(shù)據(jù)包括:描述子ID和描述子的值。
[0147]與上述方法相對(duì)應(yīng),參見圖6,所述子分解單元210,可以包括:
[0148]字典建立單元221,用于建立數(shù)據(jù)對(duì)象字典和掃描子字典;
[0149]第一初始化單元222,用于初始化待處理字符串報(bào)文的當(dāng)前位置為第一個(gè)字符,向所述第一掃描單元223輸出觸發(fā)信號(hào);
[0150]所述第一初始化單元222,用于將所述待處理字符串報(bào)文的第一個(gè)字符作為所述待處理字符串報(bào)文的當(dāng)前處理位置(即,當(dāng)前位置);
[0151]第一掃描單元223,用于當(dāng)獲取到觸發(fā)信號(hào)后,從當(dāng)前位置掃描待處理字符串報(bào)文直至掃描到一個(gè)數(shù)據(jù)對(duì)象,如果到達(dá)所述待處理字符串報(bào)文的末尾,向報(bào)錯(cuò)單元227輸出觸發(fā)信號(hào),否則向第一匹配單元224輸出觸發(fā)信號(hào);
[0152]所述第一掃描單元具體用于由確定的當(dāng)前位置開始,對(duì)所述待處理字符串報(bào)文進(jìn)行掃描,直至掃描到數(shù)據(jù)對(duì)象為止,由于所述數(shù)據(jù)對(duì)象在對(duì)所述待處理字符串報(bào)文進(jìn)行分解之前就已知的,因此,可實(shí)現(xiàn)判斷是否掃描到所述數(shù)據(jù)對(duì)象;
[0153]第一匹配單元224,用于當(dāng)獲取到觸發(fā)信號(hào)后,判斷所述數(shù)據(jù)對(duì)象字典中是否存在掃描到的所述數(shù)據(jù)對(duì)象,如果是,向第一當(dāng)前位置更新單元226輸出觸發(fā)信號(hào),否則,向第一數(shù)據(jù)導(dǎo)入單元225輸出觸發(fā)信號(hào);
[0154]所述第一匹配單元224需要判斷掃描到的數(shù)據(jù)對(duì)象是否已經(jīng)存儲(chǔ)在所述數(shù)據(jù)對(duì)象字典中,當(dāng)判斷結(jié)果為是時(shí),則表明對(duì)本次掃描到的對(duì)象數(shù)據(jù)的已經(jīng)提取完畢;
[0155]第一數(shù)據(jù)導(dǎo)入單元225,用于當(dāng)獲取到觸發(fā)信號(hào)后,為掃描到的數(shù)據(jù)對(duì)象分配一個(gè)ID,并將該數(shù)據(jù)對(duì)象加入數(shù)據(jù)對(duì)象字典,向所述第一當(dāng)前位置更新單元226輸出觸發(fā)信號(hào);
[0156]第一數(shù)據(jù)導(dǎo)入單元225當(dāng)判斷掃描到的數(shù)據(jù)對(duì)象未包含在所述數(shù)據(jù)對(duì)象字典中時(shí),對(duì)該數(shù)據(jù)對(duì)象分配一個(gè)唯一的ID,并將該數(shù)據(jù)對(duì)象加入至所述數(shù)據(jù)對(duì)象字典中;
[0157]第一當(dāng)前位置更新單元226,用于將所述待處理字符串報(bào)文的當(dāng)前位置作為被掃描到的數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符,將所述數(shù)據(jù)對(duì)象頭字符的上一個(gè)字符作為當(dāng)前位置,向所述第一掃描單元223輸出觸發(fā)信號(hào);
[0158]所述第一當(dāng)前位置更新單元226用于設(shè)置所述當(dāng)前位置為數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符。當(dāng)掃描到第一個(gè)數(shù)據(jù)對(duì)象后,并對(duì)該數(shù)據(jù)對(duì)象進(jìn)行上述處理后,還需對(duì)該待處理字符串報(bào)文的后續(xù)部分進(jìn)行掃描,掃描后續(xù)字符串中的數(shù)據(jù)對(duì)象,因此,當(dāng)所述待處理字符串報(bào)文掃描到第一個(gè)數(shù)據(jù)對(duì)象后,將該數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,繼續(xù)對(duì)所述待處理字符串報(bào)文的后續(xù)部分進(jìn)行掃描。
[0159]報(bào)錯(cuò)單元227,用于當(dāng)獲取到觸發(fā)信號(hào)后,判斷所述數(shù)據(jù)對(duì)象字典中的條目數(shù)是否為O,如果是,報(bào)錯(cuò)并結(jié)束全部流程,否則,輸出所述數(shù)據(jù)對(duì)象字典;
[0160]當(dāng)對(duì)所述待處理字符串報(bào)文的全部字段均掃描完成后,所述報(bào)錯(cuò)單元227對(duì)所述數(shù)據(jù)對(duì)象字典中的元素?cái)?shù)量進(jìn)行判斷,當(dāng)條目數(shù)為O時(shí)(所述數(shù)據(jù)對(duì)象字典中無數(shù)據(jù)對(duì)象時(shí)),表明未掃描到所述待處理字符串報(bào)文所包含的數(shù)據(jù)對(duì)象,系統(tǒng)進(jìn)行報(bào)錯(cuò),如果所述條目數(shù)不為O,則表征數(shù)據(jù)對(duì)象提取過程正常,輸出所述數(shù)據(jù)對(duì)象字典。
[0161 ]與上述方法相對(duì)應(yīng),參見圖7,所述子分解單元210,還可以包括:
[0162]第二初始化單元228,用于初始化所述待處理字符串報(bào)文的當(dāng)前位置為第一個(gè)字符,向當(dāng)前位置判斷單元229輸出觸發(fā)信號(hào);
[0163]第二初始化單元228具體用于將所述待處理字符串報(bào)文的第一個(gè)字符作為所述待處理字符串報(bào)文的當(dāng)前處理位置(即,當(dāng)前位置);
[0164]當(dāng)前位置判斷單元229,用于判斷所述當(dāng)前位置是否為所述字符串的末尾,如果是,向描述子字典輸出單元235輸出觸發(fā)信號(hào),否則,向第二掃描單元231輸出觸發(fā)信號(hào);
[0165]所述第二掃描單元231,用于當(dāng)獲取到觸發(fā)信號(hào)后,從當(dāng)前位置開始掃描所述待處理字符串報(bào)文,直至掃描到一個(gè)數(shù)據(jù)對(duì)象,將從所述當(dāng)前位置到所述數(shù)據(jù)對(duì)象之間的子字符串記為一個(gè)描述子,向第二匹配單元232輸出觸發(fā)信號(hào);
[0166]所述第二掃描單元231由確定的當(dāng)前位置開始,對(duì)所述待處理字符串報(bào)文進(jìn)行掃描,直至掃描到數(shù)據(jù)對(duì)象為止,本次掃描的當(dāng)前位置與掃描到的所述數(shù)據(jù)對(duì)象之間的字符串即為描述子;
[0167]所述第二匹配單元232,用于當(dāng)獲取到觸發(fā)信號(hào)后,判斷該描述子是否存在于所述描述子字典中,如果是,向第二當(dāng)前位置更新單元234輸出觸發(fā)信號(hào),否則,向第二數(shù)據(jù)導(dǎo)入單元233輸出觸發(fā)信號(hào);
[0168]第二數(shù)據(jù)導(dǎo)入單元233,用于為所述描述子分配一個(gè)新ID,并將所述描述子加入描述子字典后,向第二當(dāng)前位置更新單元234輸出觸發(fā)信號(hào);
[0169]所述第二數(shù)據(jù)導(dǎo)入單元233用于當(dāng)判斷獲取的描述子未包含在所述描述子字典中時(shí),對(duì)描述子分配一個(gè)唯一的ID,并將該描述子加入至所述描述子字典中;
[0170]第二當(dāng)前位置更新單元234,用于當(dāng)獲取到觸發(fā)信號(hào)后,將所述待處理字符串報(bào)文的當(dāng)前位置作為所述數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符,將所述數(shù)據(jù)對(duì)象頭字符的上一個(gè)字符作為當(dāng)前位置,向所述當(dāng)前位置判斷單元229輸出觸發(fā)信號(hào);
[0171]第二當(dāng)前位置更新單元234具體用于設(shè)置所述當(dāng)前位置為當(dāng)前數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符。掃描到第一個(gè)數(shù)據(jù)對(duì)象后,并對(duì)得到的描述子進(jìn)行上述處理后,還需讀取所述待處理字符串報(bào)文的后續(xù)部分的描述子,因此,當(dāng)所述待處理字符串報(bào)文掃描到第一個(gè)數(shù)據(jù)對(duì)象后,將該數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,繼續(xù)對(duì)所述待處理字符串報(bào)文的后續(xù)部分進(jìn)行掃描;
[0172]描述子字典輸出單元235,用于當(dāng)獲取到觸發(fā)信號(hào)后,輸出描述子字典。
[0173]與上述方法相對(duì)應(yīng),所述子分解單元210還可以包括:
[0174]標(biāo)記單元,用于建立一個(gè)標(biāo)記隊(duì)列,將描述子ID和數(shù)據(jù)對(duì)象ID依次插入所述標(biāo)記隊(duì)列的尾部;所述標(biāo)記單元可以設(shè)置在所述第二數(shù)據(jù)導(dǎo)入單元233與第二當(dāng)前位置更新單元234之間。
[0175]與上述方法相對(duì)應(yīng),參見圖8,本申請(qǐng)上述實(shí)施例公開的裝置中,還可以包括:
[0176]重組單元400,用于依據(jù)所述標(biāo)記隊(duì)列、數(shù)據(jù)對(duì)象字典和描述子字典對(duì)所述待處理字符串報(bào)文進(jìn)行重組,得到輸出字符串;
[0177]此時(shí),所述輸出單元300還用于輸出重組后的輸出字符串。
[0178]與上述方法相對(duì)應(yīng),參見圖9,所述重組單元400具體可以包括:
[0179]第三初始化單元410,用于初始化輸出字符串為空字符串;初始化標(biāo)記隊(duì)列的當(dāng)前位置為I,向隊(duì)列判斷單元420輸出觸發(fā)信號(hào);
[0180]隊(duì)列判斷單元420,用于判斷所述標(biāo)記隊(duì)列的當(dāng)前位置是否超過所述標(biāo)記隊(duì)列的大小,如果是,向字符串輸出單元440輸出觸發(fā)信號(hào),否則,向元素提取單元430輸出觸發(fā)信號(hào);
[0181]元素提取單元430,用于從標(biāo)記隊(duì)列中取出當(dāng)前位置的元素,如果該元素是數(shù)據(jù)對(duì)象ID,則根據(jù)所述數(shù)據(jù)對(duì)象ID在數(shù)據(jù)對(duì)象字典中查找對(duì)應(yīng)的值,在所述輸出字符串的尾部加上該值;如果該元素是描述子ID,則根據(jù)所述描述子ID在描述子字典中查找對(duì)應(yīng)值,在所述輸出字符串的尾部加上該值,將所述標(biāo)記隊(duì)列的當(dāng)前位置加I,向所述隊(duì)列判斷單元420輸出觸發(fā)信號(hào);
[0182]字符串輸出單元440,用于輸出所述輸出字符串。
[0183]為了描述的方便,描述以上系統(tǒng)時(shí)以功能分為各種模塊分別描述。當(dāng)然,在實(shí)施本申請(qǐng)時(shí)可以把各模塊的功能在同一個(gè)或多個(gè)軟件和/或硬件中實(shí)現(xiàn)。
[0184]本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見即可,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于系統(tǒng)或系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述得比較簡(jiǎn)單,相關(guān)之處參見方法實(shí)施例的部分說明即可。以上所描述的系統(tǒng)及系統(tǒng)實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。
[0185]專業(yè)人員還可以進(jìn)一步意識(shí)到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
[0186]結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實(shí)施。軟件模塊可以置于隨機(jī)存儲(chǔ)器(RAM)、內(nèi)存、只讀存儲(chǔ)器(R0M)、電可編程R0M、電可擦除可編程R0M、寄存器、硬盤、可移動(dòng)磁盤、CD-ROM、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。
[0187]還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
[0188]對(duì)所公開的實(shí)施例的上述說明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專業(yè)技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開的原理和新穎特點(diǎn)相一致的最寬的范圍。
【主權(quán)項(xiàng)】
1.一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法,其特征在于,包括: 通過分解方法,對(duì)待處理字符串報(bào)文進(jìn)行分解,對(duì)待處理字符串報(bào)文中的描述業(yè)務(wù)數(shù)據(jù)部分與描述報(bào)文結(jié)構(gòu)的部分進(jìn)行區(qū)分。2.根據(jù)權(quán)利要求1所述的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法,其特征在于,所述對(duì)待處理字符串報(bào)文中的描述業(yè)務(wù)數(shù)據(jù)部分與描述報(bào)文結(jié)構(gòu)的部分進(jìn)行區(qū)分,包括: 將所述待處理字符串報(bào)文中的數(shù)據(jù)對(duì)象部分導(dǎo)入預(yù)建立的數(shù)據(jù)對(duì)象字典中,所述數(shù)據(jù)對(duì)象字典的存儲(chǔ)數(shù)據(jù)包括:數(shù)據(jù)對(duì)象ID和數(shù)據(jù)對(duì)象的值; 將所述待處理字符串報(bào)文中的描述子部分導(dǎo)入預(yù)建立的描述子字典中,所述描述子字典的存儲(chǔ)數(shù)據(jù)包括:描述子ID和描述子的值。3.根據(jù)權(quán)利要求2所述的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法,其特征在于,所述將所述待處理字符串報(bào)文中的數(shù)據(jù)對(duì)象部分導(dǎo)入預(yù)建立的數(shù)據(jù)對(duì)象字典中,包括: 5101、建立數(shù)據(jù)對(duì)象字典和掃描子字典; 5102、初始化待處理字符串報(bào)文的當(dāng)前位置為第一個(gè)字符,執(zhí)行步驟S103; 5103、從當(dāng)前位置掃描待處理字符串報(bào)文直至掃描到一個(gè)數(shù)據(jù)對(duì)象,如果到達(dá)所述待處理字符串報(bào)文的末尾,則轉(zhuǎn)步驟S107;否則繼續(xù)執(zhí)行步驟S104; 5104、判斷所述數(shù)據(jù)對(duì)象字典中是否存在掃描到的所述數(shù)據(jù)對(duì)象,如果是,執(zhí)行步驟S106 ;如果否,執(zhí)行步驟S105 ; 步驟S105、為掃描到的數(shù)據(jù)對(duì)象分配一個(gè)ID,并將該數(shù)據(jù)對(duì)象加入數(shù)據(jù)對(duì)象字典,轉(zhuǎn)步驟S106; 5106、將所述數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,并轉(zhuǎn)步驟S103; 5107、判斷所述數(shù)據(jù)對(duì)象字典中的條目數(shù)是否為0,如果是,報(bào)錯(cuò)并結(jié)束全部流程,否貝1J,輸出所述數(shù)據(jù)對(duì)象字典。4.根據(jù)權(quán)利要求2所述的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法,其特征在于,所述將所述待處理字符串報(bào)文中的描述子部分導(dǎo)入預(yù)建立的描述子字典中,包括: 5108、初始化所述待處理字符串報(bào)文的當(dāng)前位置為第一個(gè)字符;執(zhí)行步驟S109; 5109、判斷所述當(dāng)前位置是否為所述字符串的末尾,如果是,執(zhí)行步驟S113;否則,執(zhí)行步驟SI 10; 步驟S110、從當(dāng)前位置開始掃描所述待處理字符串報(bào)文,直至掃描到一個(gè)數(shù)據(jù)對(duì)象,將從所述當(dāng)前位置到所述數(shù)據(jù)對(duì)象之間的子字符串記為一個(gè)描述子,執(zhí)行步驟Slll; 步驟S111、判斷所述描述子是否存在于所述描述子字典中,如果是,執(zhí)行步驟S113;否貝Ij,執(zhí)行步驟S112; 步驟SI 12、為所述描述子分配一個(gè)新ID,并將所述描述子加入描述子字典,執(zhí)行步驟S112,; 步驟S112’、將所述數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,執(zhí)行步驟S109; 步驟S113、輸出描述子字典。5.根據(jù)權(quán)利要求2所述的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法,其特征在于,還包括: 步驟S114、建立一個(gè)標(biāo)記隊(duì)列,所述標(biāo)記隊(duì)列的元素為數(shù)據(jù)對(duì)象ID和描述子ID; 當(dāng)將所述待處理字符串報(bào)文中的數(shù)據(jù)對(duì)象部分導(dǎo)入預(yù)建立的數(shù)據(jù)對(duì)象字典中、將所述待處理字符串報(bào)文中的描述子部分導(dǎo)入預(yù)建立的描述子字典中之后,還包括: 步驟S115、將描述子ID和數(shù)據(jù)對(duì)象ID依次插入所述標(biāo)記隊(duì)列的尾部。6.根據(jù)權(quán)利要求5所述的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法,其特征在于,還包括: 依據(jù)所述標(biāo)記隊(duì)列、數(shù)據(jù)對(duì)象字典和描述子字典對(duì)所述待處理字符串報(bào)文進(jìn)行重組,得到輸出字符串。7.根據(jù)權(quán)利要求6所述的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理方法,其特征在于,依據(jù)所述標(biāo)記隊(duì)列、數(shù)據(jù)對(duì)象字典和描述子字典對(duì)所述待處理字符串報(bào)文進(jìn)行重組,得到輸出字符串,包括: 步驟S116、初始化輸出字符串為空字符串;初始化標(biāo)記隊(duì)列的當(dāng)前位置為I,執(zhí)行步驟S117; S117、判斷所述標(biāo)記隊(duì)列的當(dāng)前位置是否超過所述標(biāo)記隊(duì)列的大小,如果是,執(zhí)行步驟SI 19,否則,執(zhí)行步驟SI 18; 步驟S118、從標(biāo)記隊(duì)列中取出當(dāng)前位置的元素,如果該元素是數(shù)據(jù)對(duì)象ID,則根據(jù)所述數(shù)據(jù)對(duì)象ID在數(shù)據(jù)對(duì)象字典中查找對(duì)應(yīng)的值,在所述輸出字符串的尾部加上該值;如果該兀素是描述子ID,則根據(jù)所述描述子ID在描述子字典中查找對(duì)應(yīng)值,在所述輸出字符串的尾部加上該值,將所述標(biāo)記隊(duì)列的當(dāng)前位置加I,重復(fù)執(zhí)行步驟S117; 步驟S119、輸出所述輸出字符串。8.一種面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置,其特征在于,包括: 分解單元,用于通過分解方法,對(duì)待處理字符串報(bào)文進(jìn)行分解,對(duì)待處理字符串報(bào)文中的描述業(yè)務(wù)數(shù)據(jù)部分與描述報(bào)文結(jié)構(gòu)的部分進(jìn)行區(qū)分。9.根據(jù)權(quán)利要求8所述的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置,其特征在于,所述分解單元,包括: 子分解單元,用于將所述待處理字符串報(bào)文中的數(shù)據(jù)對(duì)象部分導(dǎo)入預(yù)建立的數(shù)據(jù)對(duì)象字典中,將所述待處理字符串報(bào)文中的描述子部分導(dǎo)入預(yù)建立的描述子字典中; 第一存儲(chǔ)單元,用于存儲(chǔ)預(yù)建立的數(shù)據(jù)對(duì)象字典,所述數(shù)據(jù)對(duì)象字典的存儲(chǔ)數(shù)據(jù)包括:數(shù)據(jù)對(duì)象ID和數(shù)據(jù)對(duì)象的值; 第二存儲(chǔ)單元,用于存儲(chǔ)預(yù)建立的描述子字典,所述描述子字典的存儲(chǔ)數(shù)據(jù)包括:描述子ID和描述子的值。10.根據(jù)權(quán)利要求9所述的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置,其特征在于,所述子分解單元,包括: 字典建立單元,用于建立數(shù)據(jù)對(duì)象字典和掃描子字典; 第一初始化單元,用于初始化待處理字符串報(bào)文的當(dāng)前位置為第一個(gè)字符,向所述第一掃描單元輸出觸發(fā)信號(hào); 第一掃描單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,從當(dāng)前位置掃描待處理字符串報(bào)文直至掃描到一個(gè)數(shù)據(jù)對(duì)象,如果到達(dá)所述待處理字符串報(bào)文的末尾,向報(bào)錯(cuò)單元輸出觸發(fā)信號(hào),否則向第一匹配單元輸出觸發(fā)信號(hào); 第一匹配單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,判斷所述數(shù)據(jù)對(duì)象字典中是否存在掃描到的所述數(shù)據(jù)對(duì)象,如果是,向第一當(dāng)前位置更新單元輸出觸發(fā)信號(hào),否則,向第一數(shù)據(jù)導(dǎo)入單元輸出觸發(fā)信號(hào); 第一數(shù)據(jù)導(dǎo)入單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,為掃描到的數(shù)據(jù)對(duì)象分配一個(gè)ID,并將該數(shù)據(jù)對(duì)象加入數(shù)據(jù)對(duì)象字典,向所述第一當(dāng)前位置更新單元輸出觸發(fā)信號(hào); 第一當(dāng)前位置更新單元,用于將所述數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,向所述第一掃描單元輸出觸發(fā)信號(hào); 報(bào)錯(cuò)單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,判斷所述數(shù)據(jù)對(duì)象字典中的條目數(shù)是否為O,如果是,報(bào)錯(cuò)并結(jié)束全部流程,否則,輸出所述數(shù)據(jù)對(duì)象字典。11.根據(jù)權(quán)利要求9所述的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置,其特征在于,所述子分解單元,還包括: 第二初始化單元,用于初始化所述待處理字符串報(bào)文的當(dāng)前位置為第一個(gè)字符,向當(dāng)前位置判斷單元輸出觸發(fā)信號(hào); 當(dāng)前位置判斷單元,用于判斷所述當(dāng)前位置是否為所述字符串的末尾,如果是,向描述子字典輸出單元輸出觸發(fā)信號(hào),否則,向第二掃描單元輸出觸發(fā)信號(hào); 所述第二掃描單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,從當(dāng)前位置開始掃描所述待處理字符串報(bào)文,直至掃描到一個(gè)數(shù)據(jù)對(duì)象,將從所述當(dāng)前位置到所述數(shù)據(jù)對(duì)象之間的子字符串記為一個(gè)描述子,向第二匹配單元輸出觸發(fā)信號(hào); 所述第二匹配單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,判斷該描述子是否存在于所述描述子字典中,如果是,向描述子字典輸出單元輸出觸發(fā)信號(hào),否則,向第二數(shù)據(jù)導(dǎo)入單元輸出觸發(fā)信號(hào); 第二數(shù)據(jù)導(dǎo)入單元,用于為所述描述子分配一個(gè)新ID,并將所述描述子加入描述子字典,向第二當(dāng)前位置更新單元輸出觸發(fā)信號(hào); 第二當(dāng)前位置更新單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,將所述數(shù)據(jù)對(duì)象尾字符的下一個(gè)字符作為當(dāng)前位置,向所述當(dāng)前位置判斷單元輸出觸發(fā)信號(hào); 描述子字典輸出單元,用于當(dāng)獲取到觸發(fā)信號(hào)后,輸出描述子字典。12.根據(jù)權(quán)利要求9所述的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置,其特征在于,子分解單元還包括: 標(biāo)記單元,用于建立一個(gè)標(biāo)記隊(duì)列,將描述子ID和數(shù)據(jù)對(duì)象ID依次插入所述標(biāo)記隊(duì)列的尾部。13.根據(jù)權(quán)利要求12所述的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置,其特征在于,還包括: 重組單元,用于依據(jù)所述標(biāo)記隊(duì)列、數(shù)據(jù)對(duì)象字典和描述子字典對(duì)所述待處理字符串報(bào)文進(jìn)行重組,得到輸出字符串。14.根據(jù)權(quán)利要求13所述的面向業(yè)務(wù)數(shù)據(jù)的字符串報(bào)文處理裝置,其特征在于,所述重組單元包括: 第三初始化單元,用于初始化輸出字符串為空字符串;初始化標(biāo)記隊(duì)列的當(dāng)前位置為I,向隊(duì)列判斷單元輸出觸發(fā)信號(hào); 隊(duì)列判斷單元,用于判斷所述標(biāo)記隊(duì)列的當(dāng)前位置是否超過所述標(biāo)記隊(duì)列的大小,如果是,向字符串輸出單元輸出觸發(fā)信號(hào),否則,向元素提取單元輸出觸發(fā)信號(hào); 元素提取單元,用于從標(biāo)記隊(duì)列中取出當(dāng)前位置的元素,如果該元素是數(shù)據(jù)對(duì)象ID,則根據(jù)所述數(shù)據(jù)對(duì)象ID在數(shù)據(jù)對(duì)象字典中查找對(duì)應(yīng)的值,在所述輸出字符串的尾部加上該值;如果該元素是描述子ID,則根據(jù)所述描述子ID在描述子字典中查找對(duì)應(yīng)值,在所述輸出字符串的尾部加上該值,將所述標(biāo)記隊(duì)列的當(dāng)前位置加1,向所述隊(duì)列判斷單元輸出觸發(fā)信號(hào); 字符串輸出單元,用于輸出所述輸出字符串。
【文檔編號(hào)】G06F17/22GK106021199SQ201610320117
【公開日】2016年10月12日
【申請(qǐng)日】2016年5月13日
【發(fā)明人】李璐, 阮紹臣, 肖莉
【申請(qǐng)人】中國(guó)農(nóng)業(yè)銀行股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
敖汉旗| 十堰市| 保靖县| 仙居县| 昌乐县| 正阳县| 凌海市| 大英县| 桐庐县| 鹤山市| 辛集市| 通榆县| 大厂| 罗平县| 綦江县| 大同市| 成安县| 尼玛县| 龙陵县| 扶沟县| 洪洞县| 甘洛县| 霞浦县| 沙田区| 大洼县| 无为县| 通山县| 富民县| 陇南市| 怀柔区| 阜城县| 汉沽区| 巫溪县| 阳城县| 南郑县| 天台县| 泰州市| 临泽县| 冀州市| 沾化县| 定安县|