[發(fā)明專利]一種基于字符串的快速匹配識別方法和裝置有效
| 申請?zhí)枺?/td> | 201810362354.9 | 申請日: | 2018-04-20 |
| 公開(公告)號: | CN108628966B | 公開(公告)日: | 2019-06-14 |
| 發(fā)明(設(shè)計(jì))人: | 李小坤 | 申請(專利權(quán))人: | 武漢綠色網(wǎng)絡(luò)信息服務(wù)有限責(zé)任公司 |
| 主分類號: | G06F16/903 | 分類號: | G06F16/903 |
| 代理公司: | 深圳市六加知識產(chǎn)權(quán)代理有限公司 44372 | 代理人: | 向彬 |
| 地址: | 430000 湖北省武漢市東湖新技術(shù)開*** | 國省代碼: | 湖北;42 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 字符串 動態(tài)變化 方法和裝置 靜態(tài)字符 快速匹配 字典樹 數(shù)組 計(jì)算機(jī)技術(shù)領(lǐng)域 動態(tài)字符 鏈接信息 內(nèi)容信息 常規(guī)的 映射庫 冗余 標(biāo)定 存儲 增設(shè) 更新 | ||
1.一種基于字符串的快速匹配識別方法,其特征在于,包括:
確定字符串中存在動態(tài)變化的一個或者多個字符位,以及相應(yīng)字符串中的靜態(tài)字符位;
根據(jù)所述字符串中的靜態(tài)字符位的內(nèi)容信息和所述一個或者多個動態(tài)字符位,更新字符串映射庫;
其中,所述字符串映射庫中對應(yīng)于所述一個或者多個動態(tài)字符位,相應(yīng)的以預(yù)設(shè)的附加字符位進(jìn)行標(biāo)定;
在獲取到一條第三字符串,需要通過所述字符串映射庫,對于所述第三字符串所代表的信息進(jìn)行解析時,所述方法還包括:
根據(jù)所述第三字符串的首字符位的內(nèi)容,在字符串映射庫的數(shù)組陣列中匹配出第一級數(shù)組中記錄信息與所述第三字符串的首字符位的內(nèi)容一致的一個或者多個候選數(shù)組陣列;
依次根據(jù)所述第三字符串的后續(xù)字符位的內(nèi)容,篩選所述一個或者多個候選數(shù)組陣列,得到第三字符串對應(yīng)的解析結(jié)果。
2.根據(jù)權(quán)利要求1所述的基于字符串的快速匹配識別方法,其特征在于,所述字符串映射庫包括一個或者多個數(shù)組陣列,所述數(shù)組陣列具體由一個或者多個數(shù)組對應(yīng)字符排列順序,以層級方式排列構(gòu)成;其中,數(shù)組的級數(shù)與字符串中相應(yīng)字符數(shù)量相對應(yīng);每一個數(shù)組包含數(shù)量上與完整字符個數(shù)相一致的數(shù)組單元,所述預(yù)設(shè)的附加字符位增設(shè)在每一個數(shù)組的最后字符位之后;其中,所述數(shù)組單元用于存儲與之關(guān)聯(lián)的下一級數(shù)組的地址。
3.根據(jù)權(quán)利要求2所述的基于字符串的快速匹配識別方法,其特征在于,完整字符個數(shù)的數(shù)組單元具體包括對應(yīng)0x00-0xFF的總共256個數(shù)組單元,則所述附加字符位對應(yīng)設(shè)置為數(shù)組中的第257數(shù)組單元,其中,各數(shù)組單元用于存儲其下一級數(shù)組的地址信息或者用于存儲跳出當(dāng)前數(shù)組陣列得到匹配結(jié)果的相應(yīng)信息。
4.根據(jù)權(quán)利要求3所述的基于字符串的快速匹配識別方法,其特征在于,用于存儲跳出當(dāng)前數(shù)組陣列得到匹配結(jié)果的相應(yīng)信息,具體包括:
對應(yīng)每一字符串的數(shù)組陣列的最后一級數(shù)組中存儲有跳轉(zhuǎn)地址鏈接,所述跳轉(zhuǎn)地址鏈接用于獲取與字符串映射庫中的字符串相匹配的解析結(jié)果;或者,
對應(yīng)每一字符串的數(shù)組陣列的最后一級數(shù)組中存儲有與字符串映射庫中的字符串相匹配的解析結(jié)果。
5.根據(jù)權(quán)利要求2所述的基于字符串的快速匹配識別方法,其特征在于,字符串映射庫已經(jīng)存儲有第一字符串,此時,在字符串映射庫中導(dǎo)入新增的第二字符串,具體包括:
對于字符串首字符相同的第一字符串和第二字符串,將第一字符串的第一級數(shù)組復(fù)用給所述第二字符串;
對于第一字符串和第二字符串之間存在差異的第i個字符位,則在第一字符串的數(shù)組陣列中,位于相應(yīng)第i級數(shù)組所在鏈路,新增一條數(shù)組來對應(yīng)第二字符串中第i個字符位內(nèi)容;從而相對于第i-1級數(shù)組,形成了兩條第i級數(shù)組的下級鏈路。
6.根據(jù)權(quán)利要求1所述的基于字符串的快速匹配識別方法,其特征在于,所述依次根據(jù)所述第三字符串的后續(xù)字符位的內(nèi)容,篩選所述一個或者多個候選數(shù)組陣列,得到第三字符串對應(yīng)的解析結(jié)果,具體包括:
將后續(xù)字符位設(shè)定為靜態(tài)字符位進(jìn)行匹配,若未匹配得到唯一的結(jié)果,則選擇性的將后續(xù)字符位設(shè)定為動態(tài)字符位,并將調(diào)整后的后續(xù)字符位進(jìn)行匹配,直到匹配到唯一的結(jié)果,或者,抵達(dá)跳出匹配循環(huán)條件后,反饋未匹配成功的消息給操作人員。
7.根據(jù)權(quán)利要求6所述的基于字符串的快速匹配識別方法,其特征在于,所述選擇性的將后續(xù)字符位設(shè)定為動態(tài)字符位,具體包括:
從上一輪匹配過程中,最后失配的字符位調(diào)整為動態(tài)字符位,并以上一輪失配時,新調(diào)整為動態(tài)字符位的前一字符位所對應(yīng)的數(shù)組為起始,進(jìn)行當(dāng)前輪的匹配過程;
若還出現(xiàn)下一個字符位失配,則重復(fù)上述調(diào)整過程,并完成整個字符串的匹配過程;
其中,對于同一字符位,若在其調(diào)整為動態(tài)字符位后,仍然未匹配成功,則確認(rèn)抵達(dá)跳出匹配循環(huán)條件,并反饋未匹配成功的消息給操作人員。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于武漢綠色網(wǎng)絡(luò)信息服務(wù)有限責(zé)任公司,未經(jīng)武漢綠色網(wǎng)絡(luò)信息服務(wù)有限責(zé)任公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810362354.9/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種動態(tài)密碼的生成方法、裝置及含有該裝置的應(yīng)用系統(tǒng)
- 日志數(shù)據(jù)的生成方法、解析方法、生成裝置及解析裝置
- 一種靜態(tài)密碼與動態(tài)密碼結(jié)合的驗(yàn)證方法及終端設(shè)備
- 編解碼方法、編解碼設(shè)備以及通信系統(tǒng)
- 一種基于字符串的快速匹配識別方法和裝置
- 動態(tài)秘鑰保護(hù)的方法及系統(tǒng)
- 書寫軌跡處理方法及裝置
- 基于節(jié)點(diǎn)服務(wù)器的服務(wù)端渲染方法、裝置和計(jì)算機(jī)設(shè)備
- 網(wǎng)頁數(shù)據(jù)加載方法、裝置、計(jì)算機(jī)設(shè)備及存儲介質(zhì)
- 基于iOS的靜態(tài)庫調(diào)用方法、裝置、設(shè)備及存儲介質(zhì)





