[發(fā)明專利]一種基于二叉樹的字符串表達(dá)式計算方法及裝置在審
| 申請?zhí)枺?/td> | 201811608927.8 | 申請日: | 2018-12-27 |
| 公開(公告)號: | CN109783702A | 公開(公告)日: | 2019-05-21 |
| 發(fā)明(設(shè)計)人: | 高峰;王治華;金明輝;盧志洋;鄒興兵;薛斌 | 申請(專利權(quán))人: | 國網(wǎng)上海市電力公司;新華三技術(shù)有限公司 |
| 主分類號: | G06F16/903 | 分類號: | G06F16/903 |
| 代理公司: | 北京卓嵐智財知識產(chǎn)權(quán)代理事務(wù)所(特殊普通合伙) 11624 | 代理人: | 郭智 |
| 地址: | 200002 上海市浦*** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 二叉樹 計算方法及裝置 字符串表達(dá)式 解析 計算機(jī)技術(shù)領(lǐng)域 表達(dá)式結(jié)果 表達(dá)式類型 輸入字符串 文字字符串 語義 字段類型 字符前綴 操作符 字符串 裝入 | ||
本發(fā)明公開了一種基于二叉樹的字符串表達(dá)式計算方法及裝置,屬于計算機(jī)技術(shù)領(lǐng)域,其方法如下:獲取輸入字符串:例如“IP Type==192.168.1.1AND ProType==TCP”;解析字段類型:例如IP地址類型、IP協(xié)議類型;解析操作符:例如==符號、AND符號;獲取字符前綴表達(dá)式;將字符串裝入二叉樹中;計算二叉樹,獲得表達(dá)式結(jié)果,本發(fā)明通過二叉樹計算的技術(shù),解決純文字字符串的表達(dá)式類型的語義判斷問題。
技術(shù)領(lǐng)域
本發(fā)明涉及計算機(jī)技術(shù)領(lǐng)域,更具體地說,涉及一種基于二叉樹的字符串表達(dá)式計算方法及裝置。
背景技術(shù)
前綴表達(dá)式:是一種沒有括號的算術(shù)表達(dá)式,其將運(yùn)算符寫在前面,操作數(shù)寫在后面。
二叉樹:在計算機(jī)科學(xué)中,二叉樹是每個節(jié)點(diǎn)最多有兩個子樹的樹結(jié)構(gòu)。通常子樹被稱作“左子樹”(left subtree)和“右子樹”(right subtree)。
現(xiàn)有技術(shù);互聯(lián)網(wǎng)上的現(xiàn)有技術(shù)主要為通過字符串表達(dá)式求值,其操作的字符范圍為數(shù)字以及數(shù)學(xué)符號,形如“(4+3*2)/2”的表達(dá)式。
現(xiàn)有技術(shù)的缺點(diǎn)主要是:
1、無法進(jìn)行純字符串的表達(dá),此類表達(dá)一般都含有較大業(yè)務(wù)意義,例如“IP地址==192.168.1.1并且協(xié)議類型==TCP”。
2、只能對數(shù)字等簡單類型做操作,無法進(jìn)行自定義擴(kuò)展類型的操作。
發(fā)明內(nèi)容
1.要解決的技術(shù)問題
針對現(xiàn)有技術(shù)中存在的問題,本發(fā)明的目的在于提供一種基于二叉樹的字符串表達(dá)式計算方法及裝置,它通過二叉樹計算的技術(shù),解決純文字字符串的表達(dá)式類型的語義判斷問題。
2.技術(shù)方案
為解決上述問題,本發(fā)明采用如下的技術(shù)方案。
一種基于二叉樹的字符串表達(dá)式計算方法及裝置,所述方法如下:
S1、獲取輸入字符串;
S2、解析字段類型;
S3、解析操作符;
S4、獲取字符前綴表達(dá)式;
S5、將字符串裝入二叉樹中;
S6、計算二叉樹,獲得表達(dá)式結(jié)果。
進(jìn)一步的,上述方法通過java實(shí)現(xiàn),具體步驟如下:
(A)抽象自定義類型;
(B)定義操作符類型;
(C)將字符串轉(zhuǎn)換為二叉樹;
(D)實(shí)現(xiàn)二叉樹計算。
進(jìn)一步的,所述步驟(A)中,定義抽象基類,包括如下接口:
(a)獲取該類型支持的操作符接口;
(b)執(zhí)行表達(dá)式接口;
(c)判斷是否為此類型字段。
進(jìn)一步的,所述步驟(B)中,定義操作符基類,包括如下接口
(a)計算兩個值及操作符的執(zhí)行結(jié)果,并返回;
(b)判斷是否為此類型操作符。
進(jìn)一步的,所述步驟(C)中,將字符串按(A)和(B)步驟解析后,判斷出字符類型和操作符類型,根據(jù)前綴表達(dá)式得到二叉樹:
(a)碰到操作數(shù)則把其值賦給相應(yīng)的新申請的二叉樹結(jié)點(diǎn),地址壓棧;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于國網(wǎng)上海市電力公司;新華三技術(shù)有限公司,未經(jīng)國網(wǎng)上海市電力公司;新華三技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811608927.8/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 利用字符串分析來檢測一個或更多分組網(wǎng)路中的有害業(yè)務(wù)量的方法和裝置
- 正則表達(dá)式匹配的方法和系統(tǒng)
- 基于正則表達(dá)式的字符串匹配方法和裝置
- 一種正則表達(dá)式的生成方法及系統(tǒng)
- 一種關(guān)系對象遞歸合并求取方法及系統(tǒng)
- 一種基于AC自動機(jī)和后綴表達(dá)式的字符串篩選方法及裝置
- 基于JSON數(shù)據(jù)的篩選方法、裝置、服務(wù)器和存儲介質(zhì)
- 正則表達(dá)式的匹配方法、裝置、電子設(shè)備及存儲介質(zhì)
- 一種文本處理方法及裝置
- 正則表達(dá)式的應(yīng)用方法及系統(tǒng)





