999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MathML的web公式檢索的方案設(shè)計

2014-10-21 14:56:52王霞文劉浩
科技視界 2014年36期

王霞文 劉浩

【摘 要】數(shù)理公式作為知識體系中的重要組成部分,在基于Web的網(wǎng)絡(luò)教學(xué)、信息發(fā)布、學(xué)術(shù)交流等方面起著非常重要的作用。然而在目前的Web環(huán)境下,數(shù)理公式的檢索問題一直困擾著用戶。本文設(shè)計了一個公式檢索系統(tǒng),可以實(shí)現(xiàn)數(shù)學(xué)公式的在線輸入及準(zhǔn)確的檢索。系統(tǒng)使用JSP技術(shù)開發(fā)前天界面,Oracle作為后臺數(shù)據(jù)庫,MathML數(shù)學(xué)標(biāo)記語言作為數(shù)學(xué)公式的描述語言,通過設(shè)計在線公式編輯模塊,用戶可以所見即所得的編輯數(shù)學(xué)公式,而公式在系統(tǒng)中存儲為MathML代碼形式,因此可以通過代碼的匹配實(shí)現(xiàn)數(shù)學(xué)公式的檢索。

【關(guān)鍵詞】公式檢索;在線公式編輯;MathML

0 引言

科技飛速發(fā)展的今天,數(shù)學(xué)公式的應(yīng)用越來越廣泛。然而WEB技術(shù)對數(shù)學(xué)符號、公式和特殊符號的支持還十分有限。目前微軟的IE瀏覽器仍無法直接支持?jǐn)?shù)學(xué)公式的顯示。

目前,Web上處理數(shù)學(xué)公式問題的方法主要有以下四種:

(1)圖片法。Web發(fā)布者先通過MathType等客戶端公式編輯器來編輯公式并將其轉(zhuǎn)換為圖片(JPG或JIF格式),然后嵌入到HTML網(wǎng)頁中,最后公式以圖片的形式在客戶端的瀏覽器中顯示。這種方式只能實(shí)現(xiàn)實(shí)現(xiàn)公式的顯示,無法對其查詢。

(2)使用專用的數(shù)學(xué)公式的瀏覽器插件。有些公司為了配合本公司自己的教學(xué)軟件或教學(xué)網(wǎng)站,設(shè)計了專用的插件。訪問者要觀看數(shù)理公式,必須先要下載這些專用的瀏覽器插件。這種方式的主要缺點(diǎn)有公式復(fù)用性差;軟件獨(dú)立性差。

(3)使用LaTex。LaTex是一套基于習(xí)慣性書寫思維的數(shù)學(xué)公式表示方法。一些大的軟件公司開發(fā)一些專用的LaTex瀏覽器插件,通過這種方式。瀏覽器可以直接觀看嵌入在HTML中的公式符號。這種方式的優(yōu)點(diǎn)是LaTex文檔的操作簡潔,復(fù)用性好;缺點(diǎn)是LaTex不是一種標(biāo)記語言,在網(wǎng)絡(luò)應(yīng)用和數(shù)據(jù)的格式化標(biāo)準(zhǔn)化方面的擴(kuò)展能力較差。

(4)基于MathML的應(yīng)用。MathML是W3C組織制定的一套基于XML的數(shù)學(xué)公式處理的標(biāo)準(zhǔn)。作為一種標(biāo)記語言,MathML在設(shè)計之初就考慮到網(wǎng)絡(luò)上的應(yīng)用和集成,其公式存儲形式更利于所以MathML在web上具有非常廣泛的應(yīng)用前景。

1 公式預(yù)處理

當(dāng)用戶輸入數(shù)學(xué)公式后,首先會進(jìn)行預(yù)處理,過濾掉代碼中的無用xml標(biāo)簽,同時替換掉字符代碼。比如勾股定理c2=a2+b2,當(dāng)用戶查找時若輸入z2=x2+y2,則無法匹配,得不到預(yù)期的結(jié)果。所以該模塊將輸入的字符數(shù)據(jù)替換成統(tǒng)一字符x,這樣在查找時就不會因?yàn)槟硞€字母不一致而無法查詢了。

雖然這樣做會降低查準(zhǔn)率,但是格式相同或相近的公式畢竟不多,所以本系統(tǒng)更加著重于提高查全率。

圖1 預(yù)處理模塊工作流程圖

2 匹配方法

對于已知公式名稱,可以很簡單查詢到公式的內(nèi)容。但是對于只知道部分公式內(nèi)容,則需要進(jìn)行代碼預(yù)處理,以過濾標(biāo)簽、字母,達(dá)到查詢的準(zhǔn)確性。

2.1 處理不匹配字符的規(guī)則

在從右向左掃描的過程中,若發(fā)現(xiàn)某個字符x不匹配,則按如下兩種情況討論:

(1)如果字符x在模式P中沒有出現(xiàn),那么從字符x開始的m個文本顯然不可能與P匹配成功,直接全部跳過該區(qū)域即可。即skip=plen,其中skip為向右移動的距離,plen為模式串P的長度。

(2)如果x在模式P中其它位置出現(xiàn),則以該字符進(jìn)行對齊。即skip=plen-max(x),其中skip為向右移動的距離,plen為模式串P的長度,max(x)為模式串P中x再次出現(xiàn)的位置。

程序中使用MakeSkip()函數(shù)實(shí)現(xiàn)該規(guī)則的處理,函數(shù)返回結(jié)果為模式串右移的距離。它的程序流程為:

(1)獲取匹配字符及模式串作為參數(shù)。

(2)若獲取參數(shù)為空,則拋出異常;否則進(jìn)行第3步。

(3)初始化設(shè)置skip=0。

(4)將字符與模式串進(jìn)行匹配。

(5)如果該字符在模式串中其它位置未出現(xiàn),則skip=plen;否則skip=plen-max(x)。

(6)返回skip值。

(7)結(jié)束。

2.2 處理已匹配字符串的規(guī)則:

若發(fā)現(xiàn)某個字符不匹配的同時,已有部分字符匹配成功,則按如下兩種情況討論:

(1)如果在P中位置t處已匹配的部分p1,在P中的t′位置再次出現(xiàn),且位置t1的前一個字符與位置t的前一個字符不相同,則將p右移使t1對應(yīng)t方才的所在的位置。

(2)如果在P中任何位置已匹配部分p1′都沒有再出現(xiàn),則找到與p1的后綴p11相同的p的最長前綴x,向右移動p,使x對應(yīng)方才p11后綴所在的位置。

程序中使用MakeShift()函數(shù)實(shí)現(xiàn)該規(guī)則的處理,函數(shù)返回結(jié)果為模式串右移的距離。它的程序流程為:

(1)獲取已匹配字符p1及模式串p作為參數(shù)。

(2)若獲取參數(shù)為空,則拋出異常;否則進(jìn)行第3步。

(3)初始化設(shè)置shift=0。

(4)將已匹配的字符串p1與模式串p進(jìn)行匹配。

(5)如果該字符串在模式串中其它位置未出現(xiàn),則shift=plen-pidx,其中pidx為p中再次出現(xiàn)p1的位置;否則進(jìn)行第6步。

(6)去掉p1串的頭部,再次匹配,直到在p中找到相同的最長前綴x,設(shè)置shift=plen-pidx;若p1在p中從未再次出現(xiàn)過,則shift=plen。

(7)返回shift值。

(8)結(jié)束。

2.3 匹配的實(shí)現(xiàn)

通過MakeSkip()函數(shù)和MakeShift()函數(shù)可以處理不同失配的情況時,模式串右移的距離,通過本函數(shù),即Search()函數(shù),則可以實(shí)現(xiàn)該匹配模式的部分精確匹配的功能。它的程序流程為:

(1)初始化,獲取文本串和模式串。

(2)若獲取參數(shù)為空,則拋出異常;否則進(jìn)行第3步。

(3)字符串左端對齊,從右端開始匹配,若匹配成功,則返回1;否則進(jìn)行下一步。

(4)調(diào)用MakeSkip()函數(shù),計算出現(xiàn)不匹配字符的時候,模式串p應(yīng)該右移的距離skip。

(5)調(diào)用MakeShift()函數(shù),計算出現(xiàn)已匹配字符串的時候,模式串p應(yīng)該右移的距離shift。

(6)令模式串p右移的距離moved為skip和shift中的大者。

(7)模式串右移moved距離,同時設(shè)置記錄文本串長的參數(shù)blen,令blen=blen-moved。

(8)判斷是否匹配結(jié)束,即blen

(9)結(jié)束。

3 結(jié)論

現(xiàn)有的Web中的數(shù)學(xué)公式,存儲格式五花八門,多以圖片形式存在,少數(shù)以MathML代碼形式出現(xiàn)的公式,其存儲格式多數(shù)不夠規(guī)范,因應(yīng)用較少,故難以達(dá)成統(tǒng)一標(biāo)準(zhǔn)。

系統(tǒng)以文本編輯器Fckeditor作為運(yùn)行平臺,用戶在界面中編輯要查詢的數(shù)理公式,通過對公式代碼的處理,即可到公式數(shù)據(jù)庫中查詢。結(jié)果頁面會返回查詢公式的相關(guān)信息,并根據(jù)查詢到的公式名稱到百度、谷歌兩個搜索引擎中查詢出相關(guān)頁面,并返回頁面鏈接。

作者聲明:“作者對本文版權(quán)全權(quán)負(fù)責(zé),無抄襲.”

本文作者創(chuàng)新點(diǎn):設(shè)計了一個公式檢索系統(tǒng),可以實(shí)現(xiàn)數(shù)學(xué)公式的在線輸入及準(zhǔn)確的檢索。系統(tǒng)使用JSP技術(shù)開發(fā)前天界面,Oracle作為后臺數(shù)據(jù)庫,MathML數(shù)學(xué)標(biāo)記語言作為數(shù)學(xué)公式的描述語言,通過設(shè)計在線公式編輯模塊,用戶可以所見即所得的編輯數(shù)學(xué)公式,而公式在系統(tǒng)中存儲為MathML代碼形式,因此可以通過代碼的匹配實(shí)現(xiàn)數(shù)學(xué)公式的檢索。

【參考文獻(xiàn)】

[1]李春偉.基于MathML的web數(shù)學(xué)公式的解決方案[J].中國科技信息,2008,10(17):78-82

[2]姜力.基于MathML的WEB數(shù)學(xué)公式表示[J].齊齊哈爾大學(xué)學(xué)報,2006,9(06): 98-102.

[3]童寧江,喻茜芝,凌代紅.WebEQ數(shù)學(xué)套件核心技術(shù)精解[J].中國科技信息, 2008,6(05).

[責(zé)任編輯:楊玉潔]

主站蜘蛛池模板: www成人国产在线观看网站| 亚洲AV无码乱码在线观看裸奔| 国产激情影院| 91无码网站| 亚洲男人天堂久久| 亚洲热线99精品视频| 精品国产一区91在线| 国产精品极品美女自在线| 99久久国产精品无码| 波多野结衣一区二区三区四区视频| 亚洲swag精品自拍一区| 中文字幕第4页| 欧美一级高清视频在线播放| 成人自拍视频在线观看| 成人无码区免费视频网站蜜臀| a毛片在线免费观看| 人妻中文久热无码丝袜| 国产福利大秀91| 久久人搡人人玩人妻精品一| 亚洲国产成熟视频在线多多| 国产尤物jk自慰制服喷水| 久久久国产精品无码专区| 一本综合久久| 国产成人精品日本亚洲| 国产极品美女在线观看| aa级毛片毛片免费观看久| 亚洲AⅤ无码日韩AV无码网站| 性色生活片在线观看| 国产成人欧美| 伊人五月丁香综合AⅤ| 亚洲欧美天堂网| 欧美日韩中文字幕在线| 国产黄视频网站| 波多野结衣在线se| 很黄的网站在线观看| 久草视频精品| 亚洲V日韩V无码一区二区| 91免费片| 日本成人一区| 午夜不卡视频| 亚洲日本中文字幕乱码中文| 69av在线| 国产精品黄色片| 国产综合精品日本亚洲777| 国产成人调教在线视频| 国产成人精品18| 四虎成人在线视频| 在线精品自拍| 91在线无码精品秘九色APP| 免费激情网站| 成人小视频在线观看免费| 日本亚洲欧美在线| 老色鬼久久亚洲AV综合| 少妇高潮惨叫久久久久久| 亚洲成人动漫在线观看| 亚洲无码高清视频在线观看| 2020国产在线视精品在| 99在线免费播放| 成人久久精品一区二区三区 | 成人精品视频一区二区在线| 最新国产成人剧情在线播放| 国产微拍一区| 四虎永久在线| 91福利免费| 黄色网在线| 亚洲第一成人在线| 伊人婷婷色香五月综合缴缴情| 97狠狠操| 亚洲日本www| 久久免费成人| www.av男人.com| 性喷潮久久久久久久久| 国产亚洲精品自在久久不卡| 国产拍揄自揄精品视频网站| 免费国产高清视频| 日本不卡在线播放| 欧美一区二区福利视频| 色婷婷电影网| 99re热精品视频国产免费| 国产精品毛片一区视频播| 亚洲视频二| 国产91视频观看|