新四季網

用於搜索多個串的方法和系統的製作方法

2023-05-26 21:11:11


專利名稱::用於搜索多個串的方法和系統的製作方法
技術領域:
:本發明一般地涉及信息處理的
技術領域:
,更具體而言,涉及用於信息搜索的方法和系統。
背景技術:
:隨著計算機和網絡相關技術的發展,越來越多的人執行數字搜索來識別或找到數字文檔中滿足他們的需求的特定內容。例如,人們(例如父母)或權威機構可以嘗試在孩子們可獲得的數字文檔中找到某些不適合孩子的限制內容(例如串、表達或詞),然後使得孩子們遠離這些內容。但是,在很多情形中,由於例如數字文檔的大小和/或數量龐大,人們或權威機構識別或找到這些限制內容是一項耗時的任務。因此,需要改進的搜索方法,用來執行高效的搜索和減少搜索時間。
發明內容本申請的目的是要提供用於基於多個串的第一字和長度的組合來高效地執行對多個串的搜索以減少搜索時間的系統和方法。根據本申請的第一方面,提供了一種用於通過使用一個或多個處理器執行駐留在計算機中的指令來從文本中搜索多個串的系統。該系統包括第一存儲設備,用於存儲分別以第一圖樣字開始的圖樣串;以及第二存儲設備,用於存儲以第一圖樣字開始的圖樣串的第一圖樣字和相應的圖樣長度的組合。該系統還包括搜尋引擎,用於在文本中迭代地識別與所述第一圖樣字之一相匹配的字以設置為當前字;提取器,用於迭代地提取以所述當前字開始並具有與圖樣長度之一相等的子串長度的子串;以及比較器,用於迭代地將所述子串與具有與該子串的第一圖樣字和長度相同的第一圖樣字和串長度的每個圖樣串相比較。該系統還可以包括第三存儲設備,用於在該子串與圖樣串之一相匹配的情況下存儲與該子串相關的信息。根據本申請的另一方面,提供了一種用於通過使用一個或多個處理器執行駐留在計算機中的指令來從文本中搜索多個串的方法。該方法包括將分別以第一圖樣字開始的圖樣串存儲在第一存儲設備中;並將分別以第一圖樣字開始的圖樣串的第一圖樣字和相應的圖樣長度的組合存儲在第二存儲設備中。該方法還包括利用搜尋引擎在文本中迭代地識別與所述第一圖樣字之一相匹配的字,以設置為當前字;利用搜尋引擎迭代地提取以所述當前字開始並具有與圖樣長度之一相等的子串長度的子串;利用搜尋引擎迭代地將該子串與具有與該子串的第一圖樣字和長度相同的第一圖樣字和串長度的每個圖樣串相比較;以及如果該子串與圖樣串之一相匹配,則將與該子串相關的信息存儲在第三存儲設備中。本申請的系統和方法可以在文本中高效地找到和定位一系列以使用大字符集(charset)的語言(例如中文)書寫的預先定義的圖樣串(例如中文詞)。本申請所採用的技術考慮使用大字符集的語言的特性,並且可以獲得線性的運行時間並減少搜索時間。該技術可被例如用於在公告板系統(BBS)線程中禁止包含一個或多個預先定義的圖樣字的文本。在附圖中以示例的方式而非限制的方式圖示出本發明的實施例,附圖中的相似標號指示相似元件,在附圖中圖1是圖示出根據示例性實施例的用於從文本中搜索多個目標圖樣串(targetpatternstring)的系統的框圖;圖2是圖示出根據示例性實施例的用於從文本中搜索多個目標圖樣串的方法的流程圖;以及圖3是以計算機系統的示例性形式圖示出根據示例性實施例的機器的框圖。具體實施例方式用於從文本中搜索多個目標圖樣串的系統和方法將被描述。在以下描述中,為了說明而提出多個具體細節,以便對本發明提供全面理解。但是,本領域技術人員應該明了,本發明無需這些具體細節也能夠被實施。在很多情形中,人們可以嘗試搜索數字文檔來找到和定位某些特定內容。例如,某些父母或權威機構可以嘗試搜索對孩子們開放的數字文件,以確定在數字文件中是否有以使用大字符集的亞洲語言(例如,中文)書寫的有害內容。這些有害內容可以是不適合孩子的多個預定目標圖樣串(例如中文詞或字),例如「色情」、「色情網」、「色情圖片」、「暴力」和「暴力電視劇」等等。每個目標圖樣串(例如「色情網」)具有一第一字(例如「色」)和一圖樣串長度(例如3)。圖1是圖示出根據示例性實施例的用於從文本中搜索多個目標圖樣串的系統100的框圖。在某些實施例中,系統100可以包括第一存儲設備10、第二存儲設備20、第三存儲設備30和搜尋引擎40。系統100還可以包括一個或多個處理器50,用於執行保留在計算機中的指令來操作其他組件。在某些實施例中,第一存儲設備10可以存儲預先定義的目標圖樣串(例如,「色情」、「色情網」、「色情圖片」、「暴力」和「暴力電視劇」),這些目標圖樣串各自具有第一字(例如,「色」或「暴」)及其圖樣串長度(例如,2、3、4或5)。第一存儲設備10可以包括一Hashkt(散列集合)。該HashSet是^^(集合)接口的具體實現方式。它創建使用散列表的聚集(collection)以用於存儲。散列表通過使用被稱為散列化(hashing)的機制來存儲信息。在某些實施例中,系統100還可以包括用戶接口60,其可以用來接收將被存儲在第一存儲設備10中的目標圖樣串。在某些實施例中,第二存儲設備20可以存儲目標圖樣串(例如,「色情」、「色情網」、「色情劇」、「色情圖片」、「暴力」和「暴力電視劇」)的第一字(例如,「色」或「暴」)和圖樣串長度(例如,2、3、4或5)的唯一組合(例如,和)。以第一圖樣字(例如「色」)開始的圖樣串(例如,「色情」、「色情網」、「色情劇」、「色情圖片」)的第一圖樣字與圖樣長度(例如,2、3、3、4)的組合(例如<「色」,(2,3,4)是不重複的。第二存儲設備20可以包括至少一個HashMap(散列圖)。HashMap指一種數據結構,其使用散列函數來將某些標識符或關鍵字(key)高效地映射到關聯的值(例如,它們的電話號碼)。散列函數用來將關鍵字轉換成將從中尋找相應值的陣列元素(槽(slot)或桶(bucket))的索引。在某些實施例中,搜尋引擎40可以從文本開頭迭代地識別與第一圖樣字之一(例如「色」)相匹配的字,並將該匹配字設置為文本中的當前字。在某些實施例中,搜尋引擎40可以迭代地提取以當前字(例如「色」)開始並具有等於目標圖樣串長度之一(例如2)的子串長度的子串。在某些實施例中,搜尋引擎40可以迭代地將該子串與具有分別與該子串的第一字和串長度相同的第一圖樣字(例如「色」)和串長度(例如2)的每個目標圖樣串(例如「色情」)相比較。如果提取出的子串與目標圖樣串之一(例如「色情」)相匹配,與該子串相關的信息則可以被存儲在第三存儲設備30中。與該子串相關的信息可以包括該子串的位置。這一過程一直前進到到達文本結尾。在某些實施例中,定位到的字串被加亮以警示用戶。在某些實施例中,系統100可以包括顯示器70,用來顯示與存儲在第三存儲設備30中的子串相關的信息。系統100可以在文本中高效地找到和定位與預先定義的目標圖樣串中的一個或多個相匹配的子串,以減少搜索時間。圖2是圖示出根據示例性實施例的用於從文本中搜索多個目標圖樣串的方法200的流程圖。在某些實施例中,在操作202處,將多個目標圖樣串(例如,「色情」、「色情網」、「色情劇」、「色情圖片」、「暴力」和「暴力電視劇」)分別存儲在第一存儲設備10中。這些目標圖樣串分別以第一圖樣字(例如「色」或「暴」)開始。在操作204處,將以第一圖樣字(例如「色」或「暴」)開始的目標圖樣串(例如,「色情」、「色情網」、「色情劇」、「色情圖片」、「暴力」和「暴力電視劇」)的第一圖樣字(例如「色」或「暴」)和相應圖樣長度(例如2、3、4或5)的唯一組合(例如,)和存儲在第二存儲設備20中。在操作206處,利用搜尋引擎40來在文本中迭代地識別與第一圖樣字之一(例如「色」)相匹配的字,以設置為當前字。在操作208處,利用搜尋引擎40迭代地提取以當前字(例如「色」)開始並具有與目標圖樣串長度之一(例如2)相等的子串長度的子串。在操作210處,利用搜尋引擎40迭代地將該子串與具有分別與該子串的第一圖樣字和子串長度相同的第一圖樣字(例如「色」)和目標串長度(例如2、的每個目標圖樣串(例如「色情」)相比較。如果該子串與目標圖樣串之一(例如「色情」)匹配,則在操作212處,將與該子串相關的信息存儲在第三存儲設備30中。與該子串相關的信息可以包括該子串的位置。操作206到212被重複,直到到達文本的結尾。在操作214處,利用顯示器70來顯示與存儲在第三存儲設備30中的所有子串相關的信息。實施例的操作可以分兩個階段來執行初始化和處理。在初始化階段,目標圖樣詞(被搜索的詞)被放入HashSet中,並且每個目標圖樣詞的第一字和長度被放入HashMap中。由於JAVA中的HashMap不允許重複的關鍵字,因此第一字相同的圖樣詞的不同長度被放入HashMap。在處理階段,文本從開頭起被迭代處理。文本的每個字都被檢查。如果在HashMap中找到當前字,則可能當前位置的子串是圖樣詞。從HashMap獲得可能的長度,並針對每個可能長度,提取出根據當前長度的子串,以檢查其是否在Hashkt中。如果獲得命中,則在文本中找到目標圖樣詞,開始位置是當前位置並且長度是當前長度。否則,過程前進到下一可能長度。如果所有可能長度都已被處理,過程則前進到文本的下一字。假設文本長度為M,並且存在N個目標圖樣串。在初始化階段所需時間為A*N,其中A是包括用於將詞存儲到HashSet中、提取出子串的第一字並且將字和長度存儲到HashMap中的時間的常數。處理階段所需時間為B*M,其中B是包括用於在HashMap中查找字、在發現命中的情況下提取出子串以及在Hashkt中查找該子串的時間的常數。該算法的總時間複雜度是(A*N+B*M)的函數。圖3是以計算機系統300的示例性形式圖示出一機器的框圖,在該計算機系統300中可以執行用於致使機器執行這裡討論的方法中的任意一種方法的指令序列的集合。在替換實施例中,該機器可以是伺服器計算機、客戶端計算機、個人計算機(PC)、tabletPC、機頂盒(STB)、個人數字助理(PDA)、蜂窩電話、網絡工具、網絡路由器、交換機或網橋,或能夠執行指定將由該機器採取的動作的指令集合的任意機器。此外,雖然只有單個機器被示出,但是術語「機器」也可以包括多個機器的任意聚集,這些機器單獨地或聯合地執行指令集合來執行這裡論述的方法中的任意一種或多種方法。示例性計算機系統300包括處理器302(例如中央處理單元(CPU)、圖形處理單元(GPU)或其兩者)、主存儲器304和靜態存儲器306,它們經由總線308彼此通信。計算機系統300還可以包括視頻顯示單元310(例如液晶顯示器(LCD)或陰極射線管(CRT))。計算機系統300還包括字母數字輸入設備312(例如鍵盤)、光標控制設備314(例如滑鼠)、盤驅動單元316、信號生成設備328(例如揚聲器)和網絡接口設備320。盤驅動單元316包括機器可讀介質322,其上存儲了體現這裡描述的方法或功能中的任意一種或多種的一個或多個指令集合(例如軟體324)。軟體3M在被計算機系統300執行期間還可以完全或至少部分駐留在主存儲器304和/或處理器320中,主存儲器304和處理器320也構成機器可讀介質。軟體3還可以經由網絡接口設備320被在網絡3上發送或接收。雖然機器可讀介質322在示例性實施例中被示出為單個介質,但是術語「機器可讀介質」應該被認為包括存儲一個或多個指令集合的單個介質或多個介質(例如,集中式或分布式資料庫和/或關聯的緩存和伺服器)。術語「機器可讀介質」還將被認為包括能夠存儲、編碼或承載如下指令集合的任意介質,所述指令集合被機器執行並致使機器執行本發明的實施例的方法或操作中的任意一種或多種。術語「機器可讀介質」因此將被認為包括(但不局限於)固態存儲器、光和磁介質以及載波信號。因此,從文本搜索多個目標圖樣串的方法和系統已被描述。雖然本發明已經參考具體的示例性實施例進行了描述,但是將會明了,在不脫離本發明的更寬精神和範圍的情況下可以對這些實施例作出各種修改和改變。因此,說明書和附圖將被視為示例性的而非限制性的。權利要求1.一種用於通過使用一個或多個處理器執行駐留在計算機中的指令來從文本中搜索多個串的方法,該方法包括將分別以第一圖樣字開始的圖樣串存儲在第一存儲設備中;將分別以第一圖樣字開始的圖樣串的第一圖樣字和相應的圖樣長度的組合存儲在第二存儲設備中;利用搜尋引擎在文本中迭代地識別與所述第一圖樣字之一相匹配的字,以設置為當前字;利用所述搜尋引擎迭代地提取以所述當前字開始並具有與圖樣長度之一相等的子串長度的子串;利用所述搜尋引擎迭代地將所述子串與具有與該子串的第一圖樣字和長度相同的第一圖樣字和串長度的每個圖樣串相比較;以及如果該子串與圖樣串之一相匹配,則將與該子串相關的信息存儲在第三存儲設備中。2.如權利要求1所述的方法,還包括從用戶界面接收所述圖樣串。3.如權利要求1所述的方法,還包括利用顯示器顯示與存儲在第三存儲設備中的子串相關的信息。4.如權利要求1所述的方法,其中,以第一圖樣字開始的圖樣串的第一圖樣字和圖樣長度的組合是不重複的。5.如權利要求1所述的方法,其中,所述第一存儲設備包括至少一個Hashkt,並且其中所述第二存儲設備包括至少一個HashMap。6.一種用於通過使用一個或多個處理器執行駐留在計算機中的指令來從文本中搜索多個串的系統,該系統包括第一存儲設備,用於存儲分別以第一圖樣字開始的圖樣串;第二存儲設備,用於存儲以第一圖樣字開始的圖樣串的第一圖樣字和相應的圖樣長度的組合;搜尋引擎,用於在文本中迭代地識別與所述第一圖樣字之一相匹配的字以設置為當前字,其中所述搜尋引擎迭代地提取以所述當前字開始並具有與圖樣長度之一相等的子串長度的子串,並且其中所述搜尋引擎迭代地將所述子串與具有與該子串的第一圖樣字和長度相同的第一圖樣字和串長度的每個圖樣串相比較;以及第三存儲設備,用於在該子串與圖樣串之一相匹配的情況下存儲與該子串相關的信息。7.如權利要求6所述的系統,還包括用於界面,用於接收所述圖樣串。8.如權利要求6所述的系統,還包括顯示器,用於顯示與存儲在第三存儲設備中的子串相關的信息。9.如權利要求6所述的系統,其中與存儲在第三存儲設備中的子串相關的信息包括所述子串在文本中的位置。10.如權利要求6所述的系統,其中如果所述子串與圖樣串之一相匹配,所述搜尋引擎則加亮該子串。全文摘要本發明涉及用於搜索多個串的方法和系統。該系統可以包括第一存儲設備,用於存儲分別以第一圖樣字開始的圖樣串;以及第二存儲設備,用於存儲以第一圖樣字開始的圖樣串的第一圖樣字和相應的圖樣長度的組合。該系統還可以包括搜尋引擎,用於在文本中迭代地識別與所述第一圖樣字之一相匹配的字以設置為當前字,其中所述搜尋引擎迭代地提取以所述當前字開始並具有與圖樣長度之一相等的子串長度的子串,並且其中所述搜尋引擎迭代地將所述子串與具有與該子串的第一圖樣字和長度相等的第一圖樣字和串長度的每個圖樣串相比較。該系統還可以包括第三存儲設備,用於存儲與圖樣串之一相匹配的任意子串。文檔編號G06F17/30GK102169485SQ201010116709公開日2011年8月31日申請日期2010年2月26日優先權日2010年2月26日發明者張林申請人:電子灣有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀