CN1890669A - 关键字字符串的增量搜索 - Google Patents
关键字字符串的增量搜索 Download PDFInfo
- Publication number
- CN1890669A CN1890669A CNA2004800369504A CN200480036950A CN1890669A CN 1890669 A CN1890669 A CN 1890669A CN A2004800369504 A CNA2004800369504 A CN A2004800369504A CN 200480036950 A CN200480036950 A CN 200480036950A CN 1890669 A CN1890669 A CN 1890669A
- Authority
- CN
- China
- Prior art keywords
- strings
- bit vector
- keyword strings
- word
- symbol
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90324—Query formulation using system suggestions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2237—Vectors, bitmaps or matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
通过接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串、至少部分地基于输入关键字字符串创建位向量、将位向量与表示至少一个候选关键字字符串的一个或多个其它位向量进行比较以创建一组匹配位向量、并且将常规关键字匹配算法应用于由匹配位向量表示的至少一个候选关键字字符串,可以执行关键字增量搜索。任何匹配候选关键字字符串可以被呈现。
Description
技术领域
本发明涉及计算机科学领域。更具体地,本发明涉及一种用于关键字字符串的增量搜索的方法和装置。
背景技术
通常,无线用户装置,例如个人数字助理(PDA)和移动电话,包括一个小键盘。键盘的尺寸导致使用该键盘很困难。例如,期望找到题为“Dances with Wolves”的电影的PDA用户将不得不输入几个符号来执行有关该电影的信息的搜索。因此,期望找到这样输入的关键字字符串的答案,而不必键入整个搜索字符串。
一些解决方案对用户键入的每个输入的关键字字符串提供实时响应。如果装置可以在每个按键被键入后以匹配列表来响应,并且可以与用户键入一样迅速,则用户将知道何时停止键入按键。作为以该方式工作的系统的实例,假设数据库包括大量的关键字字符串,例如:
“Dances with Wolves”
“Jonathan Smith”
“Saint Louis”
“Sierra Wireless”
当用户在输入窗口中键入“w”时,系统立即以具有至少一个以符号“w”开始的关键字的关键字字符串来响应:
“Dances with Wolves”
“Sierra Wireless”
当用户继续键入“w d”时,系统进一步将响应缩小到具有至少一个以符号“w”开始的关键字以及至少一个以符号“d”开始的关键字的关键字字符串。在以上的实例中,只有一个可能的匹配:“Dance with Wolves”。
然而,当前的实时解决方案具有降低无线用户装置的有效性的缺陷。一个“实时”解决方案将所搜索的数据库的大小限制在10,000条目(例如装置上的联系人)。另一个“实时”解决方案将关键字搜索限制于在关键字字符串中的单个关键字。
其它解决方案提供了对相对较大数据库的穷举搜索能力。然而,这些解决方案不可实时进行,经常需要几分钟去完成。
对用于实时关键字字符串匹配的系统和方法的技术存在要求,该技术使受资源约束和受CPU约束的装置(例如移动电话、PDA、或类似物)能够与用户在用户装置上键入按键一样迅速地找到匹配项。对这种解决方案存在的另外一个要求是相对的有效率,对这种解决方案存在的另外一个要求是其允许关键字搜索字符串中多于一个单词。对这种解决方案仍存在的另外一个需要是其可以搜索相对较多数量的条目的能力。
发明内容
通过接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串、基于至少部分输入的关键字字符串创建位向量、将该位向量与表示至少一个候选关键字字符串的一个或多个其它位向量进行比较以创建一组匹配位向量、并且将常规关键字匹配算法应用于由匹配位向量表示的至少一个候选关键字字符串,可以执行关键字增量搜索。呈现任何匹配候选关键字字符串。
附图说明
结合在说明书中并构成说明书的一部分的附图,示出了本发明的一个或多个实施例,并且与具体的描述一起,用来解释本发明的原理与实施方法。
在图中:
图1是适用于本发明的实施的计算机系统的方框图。
图2是根据本发明的实施例的用于关键字字符串的增量搜索的无线用户装置的方框图。
图3是根据本发明的一个实施例的示出了用于创建关键字字符串数据库的方法的流程图。
图4是根据本发明的一个实施例的从用户角度示出了用于关键字字符串的增量搜索的方法的流程图。
图5是根据本发明的一个实施例的从搜索引擎角度示出了用于关键字字符串的增量搜索的方法的流程图。
图6A是根据本发明的一个实施例的示出了根据输入的字符串“Dances with Wolves”创建位向量的方框图。
图6B是根据本发明的一个实施例的示出了根据输入的字符串“Jonathan Smith”创建位向量的方框图。
图6C是根据本发明的一个实施例的示出了根据输入的字符串“Saint Louis”创建位向量的方框图。
图6D是根据本发明的一个实施例的示出了根据输入的字符串“Sierra Wireless”创建位向量的方框图。
图7是根据本发明的一个实施例的示出了用于创建包括位向量的关键字字符串数据库的方法的流程图,该位向量具有用于字母表中每个符号的位位置,以及对应于表示单词的第一符号的至少一个符号的位位置的位被置位。
图8是根据本发明的一个实施例的从使用图7的数据库的用户的角度示出了用于关键字字符串的增量搜索的方法的流程图。
图9是根据本发明的一个实施例的从使用图7的数据库的搜索引擎的角度示出了用于关键字字符串的增量搜索的方法的流程图。
图10是示出了以使用每个符号的相对频率为基础创建一个或多个符号的统计分组的方框图。
图11是示出了根据本发明的一个实施例的基于使用图10的统计分组的输入关键字字符串中关键字的第一符号创建位向量的方框图。
图12是示出了根据本发明的一个实施例的用于以符号的统计分组中的符号的成员资格为基础比较关键字字符串的方法的流程图。
图13是示出了根据本发明的一个实施例的用于创建包括一个或多个候选关键字字符串的总位向量的关键字字符串数据库的方法的流程图。
图14是从使用图13的数据库的用户的角度示出了根据本发明的一个实施例的用于关键字字符串的增量搜索的方法的流程图。
图15是从使用图13的数据库的搜索引擎的角度示出了根据本发明的一个实施例的用于关键字字符串的增量搜索的方法的流程图。
图16是示出了根据本发明的一个实施例的根据符号统计分组中的关键字字符串的第一单词的第一符号的成员资格创建总位向量的方框图。
图17是示出了根据本发明的一个实施例的根据符号统计分组中的关键字字符串的第一单词的第一符号的成员资格创建总位向量的方框图。
图18是示出了根据本发明的一个实施例的用于创建关键字字符串数据库的方法的流程图,该数据库包括一个或多个总位向量,其中每位对应于字母表中的一个或多个符号,并且其中具有对应于在候选关键字字符串中的单词的词首中的符号的位位置的位被置位。
图19是从使用图18的数据库的用户的角度示出了根据本发明的一个实施例的关键字字符串的增量搜索的方法的流程图。
图20是从使用图18的数据库的搜索引擎的角度示出了根据本发明的一个实施例的关键字字符串的增量搜索的方法的流程图。
图21是示出了根据本发明的一个实施例的将总位向量的至少一位分配给与关键字字符串相关的至少一个非字母属性的方框图。
图22是示出了根据本发明的一个实施例的将总位向量的至少一位分配给与关键字字符串相关的非字母属性的方框图。
图23A是示出了根据本发明的一个实施例的关键字字符串的分层组织的方框图。
图23B是示出了根据本发明的一个实施例的关键字字符串的分层组织的方框图。
图23C是示出了根据本发明的一个实施例的关键字字符串的分层组织的方框图。
图24是示出了根据本发明的一个实施例的分层构成的关键字字符串的增量搜索的方法的流程图。
图25是示出了根据本发明的一个实施例的搜索与模式匹配的位向量的层次的方法的流程图。
具体实施方式
在此,本文中的本发明的实施例描述了关键字字符串的增量搜索的方法和装置。那些本领域的普通技术人员将认识到下面对本发明的详细描述仅作为示例,并不用于任何方式的限制。从本公开收益的技术人员将容易地想到本发明的其它实施例。将详细参考在附图中示出的本发明的实施。在附图及下面涉及相同或类似部分的详细描述中始终使用相同的附图标号。
为了清楚的目的,没有示出及描述在此描述的实施方式的全部常规特征。当然,在开发任何这样的实际实施方式中应该理解,为了实现开发者的特定目标,必须做出许多特定实施方式的决定,例如顺应应用和业务相关的限制,并且随着一个实施方式到另一个实施方式和一个开发者到另一个开发者,这些特定目标将发生变化。而且,可以意识到这样的开发工作可能是复杂及耗时的,但是对那些获益于本公开的本领域的普通技术人员将不过是工程的常规工作。
根据本发明的一个实施例,将使用多种类型的操作系统(OS)、计算平台、固件、计算机程序、计算机语言、和/或通用机器来实现部件、处理步骤、和/或数据结构。方法可以作为运行在处理电路上的被编程的处理来运行。处理电路可以采取处理器和操作系统的多种组合的形式,或独立装置的形式。处理可以由硬件所执行的指令、单独的硬件、或它们的组合来实施。软件可以被存储在机器可读的程序存储装置上。
另外,那些本领域的普通技术人员将认识到可以使用较少通用性质的装置而不背离在此公开的发明概念的范畴和精神,例如硬件化的装置、现场可编程逻辑器件(FPLDs),包括现场可编程门阵列(FPGAs)和复杂可编程逻辑器件(CPLDs)、专用集成电路(ASICs)、或类似物。
在本发明的上下文中,术语“网络”包括局域网、广域网、互联网、有线电视系统、电话系统、无线通信系统、光纤网络、ATM网络、帧中继网络、卫星通信系统等。在本领域中这些网络都是熟知的并且因此不在此进一步描述。
在本发明的上下文中,术语“无线用户装置”包括任何可以进行无线通信以及可以向用户呈现信息的装置。例如,信息可以通过视觉、听觉、或触觉被呈现。例如,示例性的无线用户装置包括个人数字助理(PDA)、移动电话、个人计算机、寻呼机等。
在本发明的上下文中,术语“字母表”包括用一种或多种语言写成的一组字母或其它符号。
在本发明的上下文中,术语“符号”包括文字数字式字符,例如数字或字母表的字母。更通常地,术语“符号”包括在涉及特定领域的书写或印刷中,表示操作、数量、元素、关系、或性质所使用的标记。
在本发明的上下文中,术语“常规关键字匹配算法”定义为强力匹配算法,其中完整的字符串直接与一个或多个字符串进行比较。
图1描述了适用于本发明的实现的计算机系统100的方框图。如图1所示,系统100包括互联主要子系统的总线102,例如处理器104、内部存储器106(例如RAM)、输入/输出(I/O)控制器108、可移动存储器122(例如存储器卡)、例如通过显示适配器112的显示屏110的外部装置、滚动类型输入装置114、游戏杆116、数字键盘118、字母数字式键盘118、定向导航键126和无线接口120。可以连接许多其它装置。无线网络接口120、有线网络接口128、或两者,可以使用本领域技术人员所知的网络接口系统连接局域网或广域网(例如互联网)。
许多其它装置或子系统(没有示出)可以以类似的方式被连接。同样,图1中示出的所有装置没有必要都存在以实现本发明。此外,装置和子系统可以以与图1中示出的方式不同的方式互联。实现本发明的代码可以以可操作的方式放置在内部存储器106中或存储在诸如可移动存储器122、软盘或CD-ROM的存储介质上。
现在转到图2,图2示出了根据本发明的实施例用于关键字字符串的增量搜索的无线用户装置的方框图。无线用户装置200包括用户界面206,其配置用于接收来自用户202的输入的关键字字符串210并且向用户202提供一个或多个具有匹配位向量220的关键字字符串。无线用户装置200还包括搜索引擎204,其用于接收用户界面206的输入关键字字符串212,从关键字字符串数据库208获得一个或多个具有与基于输入的关键字字符串214的位向量匹配的位向量的关键字字符串。搜索引擎204同时也用于将匹配的关键字字符串传送到用户界面206用于接下来提供给用户202。关键字字符串数据库208包括一个或多个包括位向量的条目以及与该位向量相关联的一个或多个关键字字符串的引用。如图2所示,位向量222至228包括32位数字,其中英语字母表的每个符号都分配了一个特定位位置,并且位向量中被置位的位(具有值“1”)指示在匹配关键字字符串中至少一个单词的第一符号等于与该位位置相关联的符号。以下参考图6至9更详细地解释了该特定位向量映射和其它示例性位向量映射。
在操作中,用户202通过无线用户装置200的用户界面206输入包括一个或多个包括一个或多个符号的关键字。用户界面206接收输入的关键字字符串210并且将其传送到搜索引擎204。搜索引擎204确定输入的关键字字符串的位向量并且与关键字字符串数据库208通信以接收与匹配位向量相关联的一个或多个关键字字符串。然后,搜索引擎204将一个或多个关键字字符串传送到用户界面206,向用户202显示匹配关键字字符串。
根据本发明的一个实施例,无线用户装置200被配置为在每次用户202输入一个输入的关键字字符串210的符号时触发关键字字符串搜索。用户202可以继续输入用于搜索的符号,匹配的数量随着每次输入而减少。
许多其它装置或子系统(没有示出)可以以类似于图2所示的方式被连接。同样,图2中示出的所有装置没有必要都存在以实现本发明。此外,装置和子系统可以以与图2中示出的方式不同的方式被互联。
图3至图5在高层示出了关键字字符串数据库的创建和使用。图6A至图9示出了包括位向量的关键字字符串数据库的创建和使用,该位向量具有用于字母表中每个符号的位位置,并且使对应于代表单词的第一符号的至少一个符号的位位置的位被置位。图10至图12示出了基于在符号的统计分组中的符号的成员资格比较关键字字符串。图13至图15示出了创建和使用包括候选关键字字符串的一个或多个总位向量的关键字字符串数据库。图16至图20示出了创建和使用包括一个或多个总位向量的关键字字符串数据库,其中每个位对应于字母表中的一个或多个符号,并且其中具有对应于在候选关键字字符串中的单词的词首中的符号的位位置的位被置位。
现在转到图3,示出了根据本发明的一个实施例的创建关键字字符串数据库的方法的流程图。在300,确定一个或多个候选关键字字符串以存储在数据库中。候选关键字字符串包括与所有来自用户的输入关键字字符串可匹配的关键字字符串。为每个在300确定的候选关键字字符串重复方框305。在310,至少部分地基于候选关键字字符串创建位向量。在315,对应于候选关键字字符串的位向量被存储在数据库中。
现在转到图4,从用户角度示出了根据本发明的一个实施例的用于关键字字符串的增量搜索的方法的流程图。在400,包括一个或多个具有一个或多个符号的单词的输入关键字字符串被提交。如果存在任何匹配,在405至少一个候选关键字字符串被接收,其具有匹配于输入关键字字符串的位向量的位向量。根据本发明的一个实施例,在每次用户输入输入关键字字符串的符号时执行处理400和405。用户可以继续输入用于搜索的符号,匹配的数量随着每个输入减少。
现在转到图5,从搜索引擎的角度示出了根据本发明的一个实施例的用于关键字增量搜索的方法的流程图。在500,接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串。在505,至少部分地基于输入的关键字字符串创建位向量。在510,位向量与表示候选关键字字符串的一个或多个位向量进行比较。根据本发明的一个实施例,位向量的比较与在关键字字符串中的关键字词首的顺序无关。例如,输入关键字字符串“J S”与候选关键字字符串“John Smith”和“Sam Jones”匹配。步骤510的结果是一组表示候选关键字字符串的匹配位向量。在515,判断是否存在匹配。如果存在匹配,在520将常规关键字匹配算法应用于由匹配位向量组表示的候选关键字字符串。在525,判断常规关键字匹配算法是否找到匹配。如果存在匹配,在535将匹配候选关键字呈现给用户。如果在515或525不存在匹配,则搜索在530停止。步骤505至515减少了常规关键字匹配算法必须运行的次数(520),因此提高了关键字字符串搜索的效率。
图6A至6D是示出了根据本发明的一个实施例的基于在输入关键字字符串中的一个或多个单词的第一符号创建位向量的方框图。图6A示出了基于输入字符串“Dances With Wolves”600创建位向量。在“Dances”(602)中的“D”对应于位608。在“With”(604)中的“W”和在“Wolves”(606)中的“W”都对应于位610。因此,表示输入字符串“Dances With Wolves”600的位向量使位608和610被置位。
图6B示出了基于输入字符串“Jonathan Smith”612创建位向量。“Jonathan”(614)中的“J”对应于位618以及“Smith”(616)中的“S”对应于位620。因此,表示输入字符串“Jonathan Smith”612的位向量使位618和620被置位。
图6C示出了基于输入字符串“Saint Louis”622创建位向量。“Saint”(624)中的“S”对应于位628和“Louis”中的“L”对应于位626。因此,表示输入字符串“Saint Louis”622的位向量使位626和628被置位。
图6D示出了基于输入字符串“Sierra Wireless”创建位向量。“Sierra”(632)中的“S”对应于位636以及“Wireless”(634)中的“W”对应于位638。因此,表示输入字符串“Sierra Wireless”(634)的位向量使位636和638被置位。
如在图6A至图6D中可以看到的,在该实施例中的位向量或掩码为用于英语语言的26位长,忽略了数字和大写字母/小写字母的区别。这些位向量可以在32位整数中表示,因此允许通过32位整数比较操作的关键字字符串比较,例如:
Int input_pattern=
00010000000000000000001000B;
Int Dances_with_wolves =
00010000000000000000001000B;
If((input_pattern & dances_with_wolves)==
input_pattern){
//we have a potential match
}
如以上实例所示,为了可能的匹配评估整个关键字字符串要求相对较少数量的机器指令。通过将关键字模式置于相邻的存储器位置,因此避免指针加载或页交换,可以进一步优化机器指令时间。
现在转到图7,示出了根据本发明的一个实施例的创建关键字字符串数据库的方法的流程图,该数据库包括具有用于字母表中每个符号的位位置的位向量,并且使对应于表示单词的第一符号的至少一个符号的位位置的位被置位的位向量。在700,确定候选关键字字符串以存储在数据库中。每个候选关键字字符串执行方框705。在710,创建位向量,该位向量具有用于字母表中每个符号的位位置以及对应于表示候选关键字字符串中的单词的第一符号的至少一个符号的位位置的位被置位。在715,对应于候选关键字字符串的位向量被存储。
根据本发明的一个实施例,字母表包括英语语言的字母表。根据本发明的实施例可以使用任何语言的字母表。
现在转到图8,从使用图7的数据库的用户的角度示出了根据本发明的一个实施例的用于关键字字符串的增量搜索的方法的流程图。在800,包括一个或多个包括一个或多个符号的单词的输入关键字字符串被提交。如果存在任何匹配,则在805匹配候选关键字字符串被接收,其中在每个候选关键字字符串中的至少一个单词的第一符号与输入关键字字符串中的对应单词的第一符号匹配。根据本发明的一个实施例,在每次用户输入输入关键字字符串的符号时执行处理800和805。用户可以继续输入用于搜索的符号,匹配的数量随着每次输入而减少。
现在转到图9,从使用图7的数据库的搜索引擎的角度示出了根据本发明的一个实施例的用于关键字字符串的增量搜索的方法的流程图。在900,接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串。在905,创建具有用于字母表中每个符号的位位置的位向量、以及具有使对应于表示输入关键字字符串中的单词的第一符号的至少一个符号的位位置的位被置位的位向量。在910,位向量与表示候选关键字字符串的一个或多个其它位向量进行比较。根据本发明的一个实施例,位向量的比较与在关键字字符串中的关键字词首的顺序无关。例如,输入关键字字符串“J S”与候选关键字字符串“John Smith”和“Sam Jones”匹配。步骤910的结果是一组表示候选关键字字符串的匹配位向量。在915,判断是否存在匹配。如果存在匹配,在920将常规关键字匹配算法应用于由匹配位向量组表示的候选关键字字符串。在925,判断常规关键字匹配算法是否找到匹配。如果存在匹配,则在935将匹配候选关键字呈现给用户。如果在915或925不存在匹配,则搜索在930停止。步骤905至915减少了常规关键字匹配算法必须运行的次数(920),因此提高了关键字字符串搜索的效率。
现在转到图10,示出了以每个符号的相对使用频率为基础创建一个或多个符号的统计分组的方框图。表1000表示英语字母表中的符号的相对使用频率的判决结果。表1015示出了符号组合为符号组,其中每个组的使用频率等于组中每个成员使用频率的和。根据本发明的一个实施例,选择了一个分组使得组的使用频率之间的不同减到最小。
在图10中示出的频率表是用于示例的目的,并不是用于一任何方式进行限制。根据本发明的实施例,频率表可以基于一个或多个说话方式,例如口头或书面语句。示例性的书面语句包括报纸、小说、论文、字典和例如讲演的口头说话方式的记录。本领域的普通技术人员将认识到可以使用其它的书面语句。一种或多种说话方式可以是任何语言、语言方言或俚语。同时可以至少部分地基于讲演者的人口统计状况(例如年龄或收入)选择一个或多个说话方式。同时可以至少部分地基于用户对无线用户装置的先前输入选择一个或多个说话方式。
现在转到图11,示出了根据本发明的一个实施例的使用图10的统计分组基于输入关键字字符串中的关键字的第一符号创建位向量的方框图。如图11所示,如果位位置与包括输入字符串1100中的单词的第一符号匹配的符号的符号组相关联,位图1135中的一位被置位。“Dances With Wolves”1100中的每个单词的第一符号是“D”1105、“W”1110和“W”1115。符号“D”1105对应于位位置1125以及符号“W”(1110,1115)对应于位位置1120,因此位1125和1120被置位。
现在转到图12,示出了根据本发明的一个实施例的以符号统计分组中符号的成员资格为基础比较关键字字符串的方法的流程图。在1200,一种语言中至少一个符号的相对使用频率被确定。根据本发明的一个实施例,相对使用频率包括语言中单词的第一字符中的符号的相对使用频率。在1205,基于相对使用频率,向至少一个符号分配了统计权重。在1210,至少一个符号中的每个被分配给多个组中的一个,使得用于包括每个组的符号的统计权重和之间的差别最小。在1215,至少部分地根据第一关键字字符串的至少一个符号是否分配到与第二关键字字符串的至少一个对应符号相同的组,来比较第一关键字字符串和第二关键字字符串。
根据本发明的另一个实施例,以在固定分组或接近符号的相对使用频率的分组中的符号的成员资格为基础,来比较关键字字符串。例如,可以根据在标准电话键盘上找到的符号分组(“ABC”、“DEF”、“GHI”、“JKL”、“MNO”、“PQRS”、“TUV”、和“WXYZ”)来对符号进行分组。那些本领域的普通技术人员应该明白其他分组是可能的。
现在转到图13,示出了根据本发明的一个实施例的用于创建包括一个或多个候选关键字字符串的总位向量的关键字字符串数据库的方法的流程图。在1300,确定候选关键字字符串以存储在数据库中。每个候选关键字字符串重复方框1305。在1310,创建位向量,其中每位对应于语言字母表中的一个或多个符号以及其中对应于候选关键字字符串中的单词的第一符号的位位置的位被置位。在1315,对应于候选关键字字符串的位向量被存储。
现在翻转图14,从使用图13的数据库的用户的角度示出了根据本发明的一个实施例的用于关键字字符串的增量搜索的方法的流程图。在1400,提交包括一个或多个符号的输入关键字字符串,其中每个符号代表在搜索字符串中的单词的第一符号。如果存在任何匹配,则在1405一个或多个匹配候选关键字字符串被接收,其中每个候选关键字字符串中的第一符号被包括一个或多个符号的分组所包括。根据本发明的一个实施例,在每次用户输入输入关键字字符串的符号时执行过程1400和1405。用户可以继续输入用于搜索的符号,匹配的数目随着每次输入而减少。
现在转到图15,从使用图13的数据库的搜索引擎的角度示出了根据本发明的一个实施例的用于关键字字符串的增量搜索的方法的流程图。在1500,接收包括一个或多个符号的输入关键字字符串,其中每个符号代表在搜索字符串的单词的第一符号。在1505,创建位向量,其中每位对应于字母表中的一个或多个符号并且其中对应于候选关键字字符串中的单词的第一符号的位位置的位被置位。在1510,位向量与表示候选关键字字符串的一个或多个其它位向量相比较。根据本发明的一个实施例,位向量的比较与在关键字字符串中的关键字词首的顺序无关。例如,输入关键字字符串“J S”与候选关键字字符串“John Smith”和“Sam Jones”匹配。步骤1510的结果是一组表示候选关键字字符串的匹配位向量。在1515,确定是否存在匹配。如果存在匹配,则在1520将常规关键字匹配算法应用于由匹配位向量组表示的候选关键字字符串。在1525,确定常规关键字匹配算法是否找到匹配。如果存在匹配,则在1535将匹配候选关键字字符串呈现给用户。如果在1515或1525不存在匹配,搜索在1530停止。步骤1505至1515减少了常规关键字匹配算法必须运行的次数(1520),因此提高了关键字字符串搜索的效率。
现在转到图16,示出了根据本发明的一个实施例的基于符号的统计分组中的关键字字符串的第一单词的第一符号的成员资格创建总位向量的方框图。如图16所示,“Dances”(1605)中的“D”对应于位向量1650的位1625、“Dances”(1610)中的“a”对应于位向量1655的位1630、“Dances”(1615)中的“n”对应于位向量1660的位1635以及“Dances”中的“c”对应于位向量1665的位1640。将四个8位向量组合得到32位十六进制值10400220(1645)。
现在转到图17,示出了根据本发明的一个实施例的基于符号统计分组中的关键字字符串的第一单词的第一符号的成员资格创建总位向量的方框图。图17类似于图16,除了相同的四个8位向量被用于在输入字符串中的每个单词的前四个符号。如图17所示,在“Dances”中的符号“D”(1702)、“a”(1704)、“n”(1706)和“c”(1708)分别对应于位1728、1730、1738和1742。在“With”中的符号“W”(1710)、“i”(1712)、“t”(1714)和“h”(1716)分别对应于位1726、1732、1736和1744。同样地,在“Wolves”中的符号“W”(1718)、“o”(1720)、“l”(1722)和“v”(1724)分别对应于位1726、1734、1740和1744。四个8位向量的组合得到32位十六进制值90580722(1746)。
现在转到图18,示出了根据本发明的一个实施例的用于创建关键字字符串数据库的方法的流程图,该数据库包括一个或多个总位向量,其中每位对应于字母表中的一个或多个符号,并且其中对应于在候选关键字字符串的单词词首中的符号的位位置的位被置位。在1800,确定候选关键字字符串以存储在数据库中。每个候选关键字字符串重复方框1805。在1810,创建位向量,其中每位对应于字母表中的一个或多个符号以及其中对应于候选关键字字符串中单词词首中的符号的位位置的位被置位。在1815,对应于候选关键字字符串的位向量被存储。
现在转到图19,从使用图18的数据库的用户的角度示出了根据本发明的一个实施例的用于关键字字符串的增量搜索的方法的流程图。在1900,提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串。在1905,一个或多个匹配候选关键字字符串被接收,其中匹配候选关键字字符串的单词的词首包括至少一个符号,该符号与输入关键字字符串中对应单词的对应符号属于相同的符号组。根据本发明的一个实施例,在每次用户输入输入关键字字符串的符号时执行过程1900和1905。用户可以继续输入用于搜索的符号,匹配的数量随着每次输入而减少。
现在转到图20,从使用图18的数据库的搜索引擎的角度示出了根据本发明的一个实施例的用于关键字字符串的增量搜索的方法的流程图。在2000,接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串。在2005,创建位向量,其中每位对应于字母表中的一个或多个符号以及对应于候选关键字字符串中的单词的词首中的符号的位位置的位被置位。在2010,位向量与表示候选关键字字符串的一个或多个位向量相比较。根据本发明的一个实施例,位向量的比较与在关键字字符串中的关键字词首的顺序无关。例如,输入关键字字符串“J S”与候选关键字字符串“John Smith”和“Sam Jones”匹配。步骤2010的结果是一组表示候选关键字字符串的匹配位向量。在2015,确定是否存在匹配。如果存在匹配,则在2020将常规关键字匹配算法应用于由匹配位向量组表示的候选关键字字符串。在2025,确定常规关键字匹配算法是否找到匹配。如果存在匹配,则在2035将匹配候选关键字呈现给用户。如果在2015或2025不存在匹配,则搜索在2030停止。步骤2005至2015减少了常规关键字匹配算法必须运行的次数(2020),因此提高了关键字字符串搜索的效率。
现在转到图21,示出了根据本发明的一个实施例的将总位向量的至少一位分配给至少一个关联于关键字字符串的非字符属性的方框图。在数据库中的联系人具有例如有线电话号码(2110)、移动电话号码(2100)、电子邮件地址(2105)和纸件邮件地址(2115)的属性。本领域的普通技术人员将意识到许多其它属性可以以类似的方式存储。
服务可能具有许多可以以类似的方式表示的非字母属性。不同旅馆和餐厅的价格可以以一至五位美元定级($至$$$$$)。另外,旅馆和餐厅的品质可以以一至五个星定级(*至*****)。作为另一个实例,餐厅可以根据烹调风格类型分类(例如,法国式、意大利式、美国式)。根据本发明的一个实施例,非字母属性被过载。根据本发明的另一个实施例,非字母属性以统计地平衡其使用量的方式被过载,例如如上所述的关于字母的属性。根据本发明的另一个实施例,相互之间具有强关联的属性被过载。例如,如果在服务价格定级和服务质量定级之间具有强关联,用来表示具有强关联的属性的位被过载。参考下面的图22示出。
现在转到图22,示出了根据本发明的一个实施例的将总位向量的至少一位分配给至少一个关联于关键字字符串的非字符属性的方框图。如图22所示,位2234至2242用于价格定级和质量定级两者。例如,通过将位2234的值置位为“1”来表示“$”的价格定级。通过将相同的位(2234)置位为相同的值(1)来表示“*”的质量定级。
根据本发明的另一个实施例,如果在预定的时间之后搜索没有完成,则在此描述的搜索算法被取代。根据本发明的一个实施例,预定的时间为两秒钟。
根据本发明的另一个实施例,关键字字符串按层次组织。首先输入关键字字符串与顶层相关联的关键字字符串进行匹配。如果存在匹配,则匹配的关键字从输入关键字字符串中除去,然后接着关联于与匹配关键字相关联的部分层次的关键字字符串进行匹配。该过程将持续到没有匹配为止或到达层次的底部为止。下面参考图23A至25进行更详细的解释。
图23A至23C是示出了根据本发明的一个实施例的关键字字符串的分层组织的方框图。图23A至23C的层次代表用于北美地区的关键字字符串。参考图23A,最高级或顶级节点2300代表北美。节点2300的下一级或子节点代表在北美中的两个地区:加拿大2302和美国2308。在加拿大2302中的地区由子节点2304和2306表示。在美国2308中的地区由子节点2310和2312表示。根据本发明的一个实施例,如果输入关键字字符串的每个单词与在导向特定分层元素的分层中的单词的词首匹配,则输入关键字字符串与特定分层元素关键字字符串匹配。在图23A至23C示出了三个实例。如图23A所示,用户可以通过输入输入关键字字符串“c a”2342来将地区指定在加拿大。关键字字符串2342中的“a”与“North America”2300中的词首“a”匹配。关键字字符串2342中的“c”与“Canada”中的词首“c”匹配。节点2304和2306是节点2302的子节点,所以在图23A的分层中与输入字符串匹配的关键字字符串是“BritishColumbia”2304和“Alberta”2306。
参考图23B,输入关键字字符串“co a”2344与“BritishColumbia”相匹配,这是因为输入关键字字符串2344中的“a”与“North America”2300中的词首“A”匹配并且输入关键字字符串2344中的“co”与“British Columbia”中的词首“Co”匹配。
参考图23C,输入关键字字符串“u y”2346与“New York”相匹配,这是因为输入关键字字符串中的“u”与“United States”中的词首“U”匹配并且输入关键字字符串2346中的“y”与“NewYork”中的词首“y”匹配。
现在转到图24,示出了根据本发明的一个实施例的用于层次结构的关键字字符串的增量搜索的方法的流程图。在2400,接收包括一个或多个包括一个或多个符号的关键字的输入关键字字符串或模式。在2405,接收层次。层次的元素包括代表关键字字符串的中间节点和叶节点。在2410,计算由在层次中的每个中间节点和叶节点代表的关键字字符串的位向量。在2415,匹配项组被初始化以指示没有匹配项。在2420,为了匹配搜索在过程2410中创建的位向量层次。在2425,将匹配项输出或呈现给用户。
现在转到图25,示出了根据本发明的一个实施例的用于为了与模式匹配而搜索位向量的层次的方法的流程图。图25提供了图24中附图标号2420的更多细节。在图24中创建的位向量层次中的每个元素重复图25所示的过程。在2500,输入关键字字符串或模式被保存。在2505,确定对模式和元素执行的逻辑“和”操作的结果是否为0。如果结果为“否”,则那些作为元素中单词词首的模式单词从模式中除去。在2515,确定模式是否为空。如果模式为空,则在2520元素被添加到匹配项列表。在2525,确定模式是否为层次。如果模式为层次,则对模式和元素执行图25中示出的搜索过程。在2535,保存的输入关键字字符串或模式被恢复。
虽然示出和描述了本发明的实施例和应用,显然,在没有背离本发明思想的前提下,由于本公开而受益的本领域的技术人员可以做出许多不同于上述的修改。因此,本发明除了在权利要求的精神之外,不被限制。
Claims (206)
1.一种用于创建关键字字符串数据库的方法,所述方法包括:
确定一个或多个候选关键字字符串以存储在所述数据库中;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
2.根据权利要求1所述的方法,其中所述位向量还包括至少一个代表非字母数字符号的位。
3.根据权利要求2所述的方法,其中所述非字母数字符号表示电子邮件地址。
4.根据权利要求2所述的方法,其中所述非字母数字符号表示移动电话号码。
5.根据权利要求2所述的方法,其中所述非字母数字符号表示有线电话号码。
6.根据权利要求2所述的方法,其中所述非字母数字符号表示纸件邮件地址。
7.根据权利要求2所述的方法,其中所述非字母数字符号表示价格等级。
8.根据权利要求2所述的方法,其中所述非字母数字符号表示质量等级。
9.根据权利要求2所述的方法,其中所述非字母数字符号表示烹调风格。
10.一种用于关键字增量搜索的方法,所述方法包括:
提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串;以及
响应于所述提交,接收具有与所述输入关键字字符串的位向量匹配的位向量的至少一个候选关键字字符串。
11.根据权利要求10所述的方法,还包括在预定时间之后取代所述方法。
12.根据权利要求11所述的方法,其中所述预定时间为两秒钟。
13.一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串;
至少部分地基于所述输入关键字字符串创建位向量;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组;
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串;以及
呈现任何匹配候选关键字字符串。
14.根据权利要求13所述的方法,还包括在预定时间之后取代所述方法。
15.根据权利要求14所述的方法,其中所述预定时间为两秒钟。
16.根据权利要求13所述的方法,其中所述比较与关键字字符串中的关键字词首的顺序无关。
17.一种用于创建关键字字符串数据库的方法,所述方法包括:
确定一个或多个候选关键字字符串以存储在所述数据库中;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量,所述位向量具有用于字母表中每个符号的位位置以及对应于代表所述一个或多个候选关键字字符串中单词的第一符号的至少一个符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
18.一种用于关键字增量搜索的方法,所述方法包括:
提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串;以及
响应于所述提交,接收至少一个候选关键字字符串,其中在每个所述至少一个候选关键字字符串中至少一个单词的第一符号匹配于所述输入关键字字符串中对应单词的第一符号。
19.根据权利要求18所述的方法,还包括在预定时间之后取代所述方法。
20.根据权利要求19所述的方法,其中所述预定时间为两秒钟。
21.一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串;
至少部分地基于所述输入关键字字符串创建位向量,所述位向量具有用于字母表中每个符号的位位置和对应于代表所述输入关键字字符串中单词的第一符号的至少一个符号的位置的位被置位;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组;
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串;以及
呈现任何匹配候选关键字字符串。
22.根据权利要求21所述的方法,还包括在预定时间之后取代所述方法。
23.根据权利要求22所述的方法,其中所述预定时间为两秒钟。
24.根据权利要求21所述的方法,其中所述比较与关键字字符串中的关键字词首的顺序无关。
25.一种用于比较关键字字符串的方法,所述方法包括:
确定一种语言中至少一个符号的相对使用频率;
至少部分地基于所述至少一个字符的相对使用频率,向所述至少一个符号分配统计权重;
将每个所述至少一个符号分配给多个组中的一个;以及
至少部分地基于第一关键字字符串的至少一个符号与第二关键字字符串的至少一个对应符号是否被分配到相同的组,来比较所述第一关键字字符串和所述第二关键字字符串。
26.根据权利要求25所述的方法,其中所述分配还包括将每个所述至少一个符号分配到多个组中的一个,使得用于包括所述多个组中的每个组的符号的统计权重和之间的差别最小。
27.根据权利要求25所述的方法,其中所述相对使用频率包括所述语言中的单词的第一字符中的符号的相对使用频率。
28.一种用于创建关键字字符串数据库的方法,所述方法包括:
确定一个或多个候选关键字字符串以存储在所述数据库中;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量,所述一个或多个位向量的每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个候选关键字字符串中的单词的第一符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
29.一种用于关键字增量搜索的方法,所述方法包括:
提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串,每个符号代表在搜索字符串中的单词的第一符号;以及
响应于所述提交,接收至少一个候选关键字字符串,其中每个候选关键字字符串中的每个单词的第一符号由包括所述一个或多个符号的组构成。
30.根据权利要求29所述的方法,还包括在预定时间之后取代所述方法。
31.根据权利要求30所述的方法,其中所述预定时间为两秒钟。
32.一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串,每个符号代表搜索字符串中的单词的第一符号;
至少部分地基于所述输入关键字字符串创建位向量,每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个符号的位位置的位被置位;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组;
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串;以及
呈现任何匹配候选关键字字符串。
33.根据权利要求32所述的方法,还包括在预定时间之后取代所述方法。
34.根据权利要求33所述的方法,其中所述预定时间为两秒钟。
35.根据权利要求32所述的方法,其中所述比较与关键字字符串中的关键字词首的顺序无关。
36.一种用于创建关键字字符串数据库的方法,所述方法包括:
确定一个或多个候选关键字字符串以存储在所述数据库中;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量,所述一个或多个位向量的每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个候选关键字字符串中的单词词首的符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
37.一种用于关键字增量搜索的方法,所述方法包括:
提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串;以及
响应于所述提交,接收至少一个候选关键字字符串,其中匹配候选关键字字符串的单词词首包括至少一个符号,该符号与所述输入关键字字符串中对应单词的对应符号属于相同符号组。
38.根据权利要求37所述的方法,还包括在预定时间之后取代所述方法。
39.根据权利要求38所述的方法,其中所述预定时间为两秒钟。
40.一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串;
至少部分地基于所述输入关键字字符串创建位向量,每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个符号中的单词词首的位位置的位被置位;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组;
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串;以及
呈现任何匹配候选关键字字符串。
41.根据权利要求40所述的方法,还包括在预定时间之后取代所述方法。
42.根据权利要求41所述的方法,其中所述预定时间为两秒钟。
43.根据权利要求40所述的方法,其中所述比较与关键字字符串中的关键字词首的顺序无关。
44.一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串,每个符号代表搜索字符串中的单词的第一符号;
接收层次,所述层次的元素包括中间节点和叶节点,其代表一个或多个包括一个或多个包括一个或多个符号的单词的关键字字符串;
创建对应于所述层次中的所述一个或多个关键字字符串的层次位向量;
为与所述输入关键字字符串匹配,搜索所述层次位向量,所述搜索包括,为所述层次的每个所述元素:
保存所述输入关键字字符串;
对元素的位向量和至少部分地基于所述输入关键字字符串的位向量应用逻辑“和”操作,所述应用产生一个结果;
如果所述结果为非零,从所述输入关键字字符串中除去作为所述元素中单词词首的所述输入关键字字符串中的任何单词;
如果所述输入关键字字符串为空,将所述元素添加到匹配项列表;以及
恢复所述输入关键字字符串;以及
呈报所述匹配项列表。
45.一种用于创建关键字字符串数据库的方法,所述方法包括:
确定一个或多个候选关键字字符串以存储在所述数据库中的步骤;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量的步骤,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中的步骤。
46.根据权利要求45所述的方法,其中所述位向量还包括至少一个代表非字母数字符号的位。
47.根据权利要求46所述的方法,其中所述非字母数字符号表示电子邮件地址。
48.根据权利要求46所述的方法,其中所述非字母数字符号表示移动电话号码。
49.根据权利要求46所述的方法,其中所述非字母数字符号表示有线电话号码。
50.根据权利要求46所述的方法,其中所述非字母数字符号表示纸件邮件地址。
51.根据权利要求46所述的方法,其中所述非字母数字符号表示价格等级。
52.根据权利要求46所述的方法,其中所述非字母数字符号表示质量等级。
53.根据权利要求46所述的方法,其中所述非字母数字符号表示烹调风格。
54.一种用于关键字增量搜索的方法,所述方法包括:
提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串的步骤;以及
响应于所述提交,接收具有与所述输入关键字字符串的位向量匹配的位向量的至少一个候选关键字字符串的步骤。
55.根据权利要求54所述的方法,还包括在预定时间之后取代所述方法的步骤。
56.根据权利要求55所述的方法,其中所述预定时间为两秒钟。
57.一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串的步骤;
至少部分地基于所述输入关键字字符串创建位向量的步骤;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组的步骤;
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串的步骤;以及
呈现任何匹配候选关键字字符串的步骤。
58.根据权利要求57所述的方法,还包括在预定时间之后取代所述方法的步骤。
59.根据权利要求58所述的方法,其中所述预定时间为两秒钟。
60.根据权利要求57所述的方法,其中所述比较与关键字字符串中的关键字词首的顺序无关。
61.一种用于创建关键字字符串数据库的方法,所述方法包括:
确定一个或多个候选关键字字符串以存储在所述数据库中的步骤;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量的步骤,所述位向量具有用于字母表中每个符号的位位置以及对应于代表所述一个或多个候选关键字字符串中单词的第一符号的至少一个符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中的步骤。
62.一种用于关键字增量搜索的方法,所述方法包括:
提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串的步骤;以及
响应于所述提交,接收至少一个候选关键字字符串的步骤,其中在每个所述至少一个候选关键字字符串中至少一个单词的第一符号匹配于所述输入关键字字符串中对应单词的第一符号。
63.根据权利要求62所述的方法,还包括在预定时间后取代所述方法的步骤。
64.根据权利要求63所述的方法,其中所述预定时间为两秒钟。
65.一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串的步骤;
至少部分地基于所述输入关键字字符串创建位向量的步骤,所述位向量具有用于字母表中每个符号的位位置和对应于代表所述输入关键字字符串中单词的第一符号的至少一个符号的位置的位被置位;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组的步骤;
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串的步骤;以及
呈现任何匹配候选关键字字符串的步骤。
66.根据权利要求65所述的方法,还包括在预定时间之后取代所述方法的步骤。
67.根据权利要求66所述的方法,其中所述预定时间量为两秒钟。
68.根据权利要求65所述的方法,其中所述比较与关键字字符串中的关键字词首的顺序无关。
69.一种用于比较关键字字符串的方法,所述方法包括:
确定一种语言中至少一个符号的相对使用频率的步骤;
至少部分地基于所述至少一个字符的相对使用频率,向所述至少一个符号分配统计权重的步骤;
将每个所述至少一个符号分配给多个组中的一个的步骤;以及
至少部分地基于第一关键字字符串的至少一个符号与第二关键字字符串的至少一个对应符号是否被分配到相同的组,来比较所述第一关键字字符串和所述第二关键字字符串的步骤。
70.根据权利要求69所述的方法,其中所述分配的步骤还包括将每个所述至少一个符号分配到多个组中的一个,使得用于包括所述多个组中的每个组的符号的统计权重和之间的差别最小。
71.根据权利要求69所述的方法,其中所述相对使用频率包括所述语言中单词的第一字符中的符号的相对使用频率。
72.一种用于创建关键字字符串数据库的方法,所述方法包括:
确定一个或多个候选关键字字符串以存储在所述数据库中的步骤;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量的步骤,所述一个或多个位向量的每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个候选关键字字符串中的单词的第一符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
73.一种用于关键字增量搜索的方法,所述方法包括:
提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串,每个符号代表在搜索字符串中的单词的第一符号的步骤;以及
响应于所述提交,接收至少一个候选关键字字符串的步骤,其中每个候选关键字字符串中的每个单词的第一符号由包括所述一个或多个符号的组构成。
74.根据权利要求73所述的方法,还包括在预定时间之后取代所述方法的步骤。
75.根据权利要求74所述的方法,其中所述预定时间为两秒钟。
76.一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串的步骤,每个符号代表搜索字符串中的单词的第一符号;
至少部分地基于所述输入关键字字符串创建位向量的步骤,每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个符号的位位置的位被置位;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组的步骤;
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串的步骤;以及
呈现任何匹配候选关键字字符串的步骤。
77.根据权利要求76所述的方法,还包括在预定时间之后取代所述方法的步骤。
78.根据权利要求77所述的方法,其中所述预定时间为两秒钟。
79.根据权利要求76所述的方法,其中所述比较与关键字字符串中的关键字词首的顺序无关。
80.一种用于创建关键字字符串数据库的方法,所述方法包括:
确定一个或多个候选关键字字符串以存储在所述数据库中的步骤;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量的步骤,所述一个或多个位向量的每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个候选关键字字符串中的单词词首的符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中的步骤。
81.一种用于关键字增量搜索的方法,所述方法包括:
提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串的步骤;以及
响应于所述提交,接收至少一个候选关键字字符串的步骤,其中匹配候选关键字字符串的单词词首包括至少一个符号,该符号与所述输入关键字字符串中对应单词的对应符号属于相同符号组。
82.根据权利要求81所述的方法,还包括在预定时间之后取代所述方法的步骤。
83.根据权利要求82所述的方法,其中所述预定时间为两秒钟。
84.一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串的步骤;
至少部分地基于所述输入关键字字符串创建位向量的步骤,每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个符号中的单词词首的位位置的位被置位;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组的步骤;
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串的步骤;以及
呈现任何匹配候选关键字字符串的步骤。
85.根据权利要求84所述的方法,还包括在预定时间之后取代所述方法的步骤。
86.根据权利要求85所述的方法,其中所述预定时间为两秒钟。
87.根据权利要求84所述的方法,其中所述比较与关键字字符串中的关键字词首的顺序无关。
88.一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串的步骤,每个符号代表搜索字符串中的单词的第一符号;
接收层次的步骤,所述层次的元素包括中间节点和叶节点,其代表一个或多个包括一个或多个包括一个或多个符号的单词的关键字字符串;
创建对应于所述层次中的所述一个或多个关键字字符串的层次位向量的步骤;
为与所述输入关键字字符串匹配,搜索所述层次位向量的步骤,所述搜索步骤包括,为所述层次的每个所述元素:
保存所述输入关键字字符串的步骤;
对元素的位向量和至少部分地基于所述输入关键字字符串的位向量应用逻辑“和”操作的步骤,所述应用产生一个结果;
如果所述结果为非零,从所述输入关键字字符串中除去作为所述元素中单词词首的所述输入关键字字符串中的任何单词;
如果所述输入关键字字符串为空,将所述元素添加到匹配项列表的步骤;以及
恢复所述输入关键字字符串的步骤;以及呈报所述匹配项列表的步骤。
89.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于创建关键字字符串数据库的方法,所述方法包括:
确定一个或多个候选关键字字符串以存储在所述数据库中;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
90.根据权利要求89所述的程序存储装置,其中所述位向量还包括至少一个代表非字母数字符号的位。
91.根据权利要求90所述的程序存储装置,其中所述非字母数字符号表示电子邮件地址。
92.根据权利要求90所述的程序存储装置,其中所述非字母数字符号表示移动电话号码。
93.根据权利要求90所述的程序存储装置,其中所述非字母数字符号表示有线电话号码。
94.根据权利要求90所述的程序存储装置,其中所述非字母数字符号表示纸件邮件地址。
95.根据权利要求90所述的程序存储装置,其中所述非字母数字符号表示价格等级。
96.根据权利要求90所述的程序存储装置,其中所述非字母数字符号表示质量等级。
97.根据权利要求90所述的程序存储装置,其中所述非字母数字符号表示烹调风格。
98.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于关键字增量搜索的方法,所述方法包括:
提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串;以及
响应于所述提交,接收具有与所述输入关键字字符串的位向量匹配的位向量的至少一个候选关键字字符串。
99.根据权利要求98所述的程序存储装置,其中所述方法还包括在预定时间之后取代所述方法。
100.根据权利要求99所述的程序存储装置,其中所述预定时间为两秒钟。
101.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串;
至少部分地基于所述输入关键字字符串创建位向量;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组;
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串;以及
呈现任何匹配候选关键字字符串。
102.根据权利要求101所述的程序存储装置,其中所述方法还包括在预定时间之后取代所述方法。
103.根据权利要求102所述的程序存储装置,其中所述预定时间为两秒钟。
104.根据权利要求101所述的程序存储装置,其中所述比较与关键字字符串中的关键字词首的顺序无关。
105.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于创建关键字字符串数据库的方法,所述方法包括:
确定一个或多个候选关键字字符串以存储在所述数据库中;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量,所述位向量具有用于字母表中每个符号的位位置以及对应于代表所述一个或多个候选关键字字符串中单词的第一符号的至少一个符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
106.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于关键字增量搜索的方法,所述方法包括:提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串;以及
响应于所述提交,接收至少一个候选关键字字符串,其中在每个所述至少一个候选关键字字符串中至少一个单词的第一符号匹配于所述输入关键字字符串中对应单词的第一符号。
107.根据权利要求106所述的程序存储装置,其中所述方法还包括在预定时间之后取代所述方法。
108.根据权利要求107所述的程序存储装置,其中所述预定时间为两秒钟。
109.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串;
至少部分地基于所述输入关键字字符串创建位向量,所述位向量具有用于字母表中每个符号的位位置和对应于代表所述输入关键字字符串中单词的第一符号的至少一个符号的位置的位被置位;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组;
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串;以及
呈现任何匹配候选关键字字符串。
110.根据权利要求109所述的程序存储装置,其中所述方法还包括在预定时间之后取代所述方法。
111.根据权利要求110所述的程序存储装置,其中所述预定时间为两秒钟。
112.根据权利要求109所述的程序存储装置,其中所述比较与关键字字符串中的关键字词首的顺序无关。
113.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种比较关键字字符串的方法,所述方法包括:
确定一种语言中至少一个符号的相对使用频率;
至少部分地基于所述至少一个字符的相对使用频率,向所述至少一个符号分配统计权重;
将每个所述至少一个符号分配给多个组中的一个;以及
至少部分地基于第一关键字字符串的至少一个符号与第二关键字字符串的至少一个对应符号是否被分配到相同的组,来比较所述第一关键字字符串和所述第二关键字字符串。
114.根据权利要求113所述的程序存储装置,其中所述分配还包括将每个所述至少一个符号分配到多个组中的一个,使得用于包括所述多个组中的每个组的符号的统计权重和之间的差别最小。
115.根据权利要求113所述的程序存储装置,其中所述相对使用频率包括所述语言中的单词的第一字符中的符号的相对使用频率。
116.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于创建关键字字符串数据库的方法,所述方法包括:
确定一个或多个候选关键字字符串以存储在所述数据库中;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量,所述一个或多个位向量的每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个候选关键字字符串中的单词的第一符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
117.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于关键字增量搜索的方法,所述方法包括:
提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串,每个符号代表在搜索字符串中的单词的第一符号;以及
响应于所述提交,接收至少一个候选关键字字符串,其中每个候选关键字字符串中的每个单词的第一符号由包括所述一个或多个符号的组构成。
118.根据权利要求117所述的程序存储装置,其中所述方法还包括在预定时间之后取代所述方法。
119.根据权利要求118所述的程序存储装置,其中所述预定时间为两秒钟。
120.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串,每个符号代表搜索字符串中的单词的第一符号;
至少部分地基于所述输入关键字字符串创建位向量,每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个符号的位位置的位被置位;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组;
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串;以及
呈现任何匹配候选关键字字符串。
121.根据权利要求120所述的程序存储装置,其中所述方法还包括在预定时间之后取代所述方法。
122.根据权利要求121所述的程序存储装置,其中所述预定时间为两秒钟。
123.根据权利要求120所述的程序存储装置,其中所述比较与关键字字符串中的关键字词首的顺序无关。
124.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于创建关键字字符串数据库的方法,所述方法包括:
确定一个或多个候选关键字字符串以存储在所述数据库中;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量,所述一个或多个位向量的每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个候选关键字字符串中的单词词首的符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
125.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于关键字增量搜索的方法,所述方法包括:
提交包括一个或多个包括一个或多个符号的单词的输入关键字字符串;以及
响应于所述提交,接收至少一个候选关键字字符串,其中匹配候选关键字字符串的单词词首包括至少一个符号,该符号与所述输入关键字字符串中对应单词的对应符号属于相同符号组。
126.根据权利要求125所述的程序存储装置,其中所述方法还包括在预定时间之后取代所述方法。
127.根据权利要求126所述的程序存储装置,其中所述预定时间为两秒钟。
128.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于关键字增量搜索的方法,所述方法包括:接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串;
至少部分地基于所述输入关键字字符串创建位向量,每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个符号中的单词词首的位位置的位被置位;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组;
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串;以及
呈现任何匹配候选关键字字符串。
129.根据权利要求128所述的程序存储装置,其中所述方法还包括在预定时间之后取代所述方法。
130.根据权利要求129所述的程序存储装置,其中所述预定时间为两秒钟。
131.根据权利要求128所述的方法,其中所述比较与关键字字符串中的关键字词首的顺序无关。
132.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于关键字增量搜索的方法,所述方法包括:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串,每个符号代表搜索字符串中的单词的第一符号;
接收层次,所述层次的元素包括中间节点和叶节点,其代表一个或多个包括一个或多个包括一个或多个符号的单词的关键字字符串;
创建对应于所述层次中的所述一个或多个关键字字符串的层次位向量;
为与所述输入关键字字符串匹配,搜索所述层次位向量,所述搜索包括,为所述层次的每个所述元素:
保存所述输入关键字字符串;
对元素位向量和至少部分地基于所述输入关键字字符串的位向量应用逻辑“和”操作,所述应用产生一个结果;
如果所述结果为非零,从所述输入关键字字符串中除去作为所述元素中单词词首的所述输入关键字字符串中的任何单词;
如果所述输入关键字字符串为空,将所述元素添加到匹配项列表;以及
恢复所述输入关键字字符串;以及呈报所述匹配项列表。
133.一种用于创建关键字字符串数据库的设备,所述设备包括:
用于确定一个或多个候选关键字字符串以存储在所述数据库中的装置;
用于至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量的装置,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
用于将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中的装置。
134.根据权利要求133所述的设备,其中所述位向量还包括至少一个代表非字母数字符号的位。
135.根据权利要求134所述的设备,其中所述非字母数字符号表示电子邮件地址。
136.根据权利要求134所述的设备,其中所述非字母数字符号表示移动电话号码。
137.根据权利要求134所述的设备,其中所述非字母数字符号表示有线电话号码。
138.根据权利要求134所述的设备,其中所述非字母数字符号表示纸件邮件地址。
139.根据权利要求134所述的设备,其中所述非字母数字符号表示价格等级。
140.根据权利要求134所述的设备,其中所述非字母数字符号表示质量等级。
141.根据权利要求134所述的设备,其中所述非字母数字符号表示烹调风格。
142.一种用于关键字增量搜索的设备,所述设备包括:
用于接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串的装置;
用于至少部分地基于所述输入关键字字符串创建位向量的装置;
用于将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组的装置;
用于将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串的装置;以及
用于呈现任何匹配候选关键字字符串的装置。
143.根据权利要求142所述的设备,还包括用于在预定时间之后取代所述接收、所述创建、所述比较、所述应用和所述呈现的装置。
144.根据权利要求143所述的设备,其中所述预定时间为两秒钟。
145.根据权利要求142所述的设备,其中所述比较与关键字字符串中的关键字词首的顺序无关。
146.一种用于创建关键字字符串数据库的设备,所述设备包括:
用于确定一个或多个候选关键字字符串以存储在所述数据库中的装置;
用于至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量的装置,所述位向量具有用于字母表中每个符号的位位置以及对应于代表所述一个或多个候选关键字字符串中单词的第一符号的至少一个符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
用于将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
147.一种用于关键字增量搜索的设备,所述设备包括:
用于接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串的装置;
用于至少部分地基于所述输入关键字字符串创建位向量的装置,所述位向量具有用于字母表中每个符号的位位置和对应于代表所述输入关键字字符串中单词的第一符号的至少一个符号的位置的位被置位;
用于将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组的装置;
用于将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串的装置;以及
用于呈现任何匹配候选关键字字符串的装置。
148.根据权利要求147所述的设备,还包括用于在预定时间之后,取代所述接收、所述创建、所述比较、所述应用和所述呈现的装置。
149.根据权利要求148所述的设备,其中所述预定时间为两秒钟。
150.根据权利要求147所述的设备,其中所述比较与关键字字符串中的关键字词首的顺序无关。
151.一种用于比较关键字字符串的设备,所述设备包括:
用于确定一种语言中至少一个符号的相对使用频率的装置;
用于至少部分地基于所述至少一个字符的相对使用频率,向所述至少一个符号分配统计权重的装置;
用于将每个所述至少一个符号分配给多个组中的一个的装置;以及
用于至少部分地基于第一关键字字符串的至少一个符号与第二关键字字符串的至少一个对应符号是否被分配到相同的组,来比较所述第一关键字字符串和所述第二关键字字符串的装置。
152.根据权利要求151所述的设备,其中所述用于分配的装置还包括将每个所述至少一个符号分配到多个组中的一个,使得用于包括所述多个组中的每个组的符号的统计权重和之间的差别最小。
153.根据权利要求151所述的设备,其中所述相对使用频率包括所述语言中的单词的第一字符中的符号的相对使用频率。
154.一种用于创建关键字字符串数据库的设备,所述设备包括:
用于确定一个或多个候选关键字字符串以存储在所述数据库中的装置;
用于至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量的装置,所述一个或多个位向量的每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个候选关键字字符串中的单词的第一符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
用于将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中的装置。
155.一种用于关键字增量搜索的设备,所述设备包括:
用于接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串的装置,每个符号代表搜索字符串中的单词的第一符号;
用于至少部分地基于所述输入关键字字符串创建位向量的装置,每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个符号的位位置的位被置位;
用于将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组的装置;
用于将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串的装置;以及
用于呈现任何匹配候选关键字字符串的装置。
156.根据权利要求155所述的设备,还包括用于在预定时间之后,取代所述接收、所述创建、所述比较、所述应用和所述呈现的装置。
157.根据权利要求156所述的设备,其中所述预定时间为两秒钟。
158.根据权利要求155所述的设备,其中所述比较与关键字字符串中的关键字词首的顺序无关。
159.一种用于创建关键字字符串数据库的设备,所述设备包括:
用于确定一个或多个候选关键字字符串以存储在所述数据库中的装置;
用于至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量的装置,所述一个或多个位向量的每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个候选关键字字符串中的单词词首的符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
用于将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中的装置。
160.一种用于关键字增量搜索的设备,所述设备包括:
用于接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串的装置;
用于至少部分地基于所述输入关键字字符串创建位向量的装置,每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个符号中的单词词首的位位置的位被置位;
用于将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组的装置;
用于将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串的装置;以及
用于呈现任何匹配候选关键字字符串的装置。
161.根据权利要求160所述的装置,还包括用于在预定时间之后,取代所述接收、所述创建、所述比较、所述应用和所述呈现的装置。
162.根据权利要求161所述的设备,其中所述预定时间为两秒钟。
163.根据权利要求160所述的设备,其中所述比较与关键字字符串中的关键字词首的顺序无关。
164.一种用于关键字增量搜索的设备,所述设备包括:
用于接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串的装置,每个符号代表搜索字符串中的单词的第一符号;
用于接收层次的装置,所述层次的元素包括中间节点和叶节点,其代表一个或多个包括一个或多个包括一个或多个符号的单词的关键字字符串;
用于创建对应于所述层次中的所述一个或多个关键字字符串的层次位向量的装置;
用于为与所述输入关键字字符串匹配,搜索所述层次位向量的装置,用于搜索的所述装置包括,为所述层次的每个所述元素:
用于保存所述输入关键字字符串的装置;
用于对元素的位向量和至少部分地基于所述输入关键字字符串的位向量应用逻辑“和”操作的装置,所述应用产生一个结果;
如果所述结果为非零,用于从所述输入关键字字符串中除去作为所述元素中单词词首的所述输入关键字字符串中的任何单词的装置;
如果所述输入关键字字符串为空,用于将所述元素添加到匹配项列表的装置;以及
用于恢复所述输入关键字字符串的装置;以及用于提供所述匹配项列表的方法。
165.一种用于创建关键字字符串数据库的装置,所述装置包括:
用于存储所述关键字字符串数据库的存储器;以及处理器,用于:
确定一个或多个候选关键字字符串以存储在所述数据库中;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
166.根据权利要求165所述的装置,其中所述位向量还包括至少一个代表非字母数字符号的位。
167.根据权利要求166所述的装置,其中所述非字母数字符号表示电子邮件地址。
168.根据权利要求166所述的装置,其中所述非字母数字符号表示移动电话号码。
169.根据权利要求166所述的装置,其中所述非字母数字符号表示有线电话号码。
170.根据权利要求166所述的装置,其中所述非字母数字符号表示纸件邮件地址。
171.根据权利要求166所述的装置,其中所述非字母数字符号表示价格等级。
172.根据权利要求166所述的装置,其中所述非字母数字符号表示质量等级。
173.根据权利要求166所述的装置,其中所述非字母数字符号表示烹调风格。
174.一种用于关键字增量搜索的装置,所述装置包括:
用户界面,用于接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串,所述用户界面还用于呈现任何匹配的关键字字符串;以及
搜索引擎,与所述用户界面通信,并且用于:
至少部分地基于所述输入关键字字符串创建位向量;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组;以及
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串。
175.根据权利要求174所述的装置,其中所述装置还用于在预定时间之后取代所述搜索引擎。
176.根据权利要求175所述的装置,其中所述预定时间为两秒钟。
177.根据权利要求174所述的装置,其中所述装置还用于比较与关键字字符串中的关键字词首的顺序无关的所述位向量。
178.一种用于创建关键字字符串数据库的装置,所述装置包括:
存储器,用于存储所述关键字字符串数据库;以及
处理器,用于:
确定一个或多个候选关键字字符串以存储在所述数据库中;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量,所述位向量具有用于字母表中每个符号的位位置以及对应于代表所述一个或多个候选关键字字符串中单词的第一符号的至少一个符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
179.一种用于关键字增量搜索的装置,所述装置包括:
用户界面,用于接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串,所述用户界面还用于呈现任何匹配的关键字字符串;以及
搜索引擎,与所述用户界面通信,并且用于:
至少部分地基于所述输入关键字字符串创建位向量,所述位向量具有用于字母表中每个符号的位位置和对应于代表所述输入关键字字符串中单词的第一符号的至少一个符号的位置的位被置位;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组;以及
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串。
180.根据权利要求179所述的装置,其中所述装置还用于在预定时间之后取代所述搜索引擎。
181.根据权利要求180所述的装置,其中所述预定时间为两秒钟。
182.根据权利要求179所述的装置,其中所述装置还用于比较与关键字字符串中的关键字词首的顺序无关的所述位向量。
183.一种用于比较关键字字符串的装置,所述装置包括:
存储器,用于存储一种语言中至少一个符号的至少一个相对使用频率;以及
处理器,用于:
确定一种语言中至少一个符号的相对使用频率;
至少部分地基于所述至少一个字符的相对使用频率,向所述至少一个符号分配统计权重;
将每个所述至少一个符号分配给多个组中的一个;
以及
至少部分地基于第一关键字字符串的至少一个符号与第二关键字字符串的至少一个对应符号是否被分配到相同的组,来比较所述第一关键字字符串和所述第二关键字字符串。
184.根据权利要求183所述的装置,其中所述处理器还用于将每个所述至少一个符号分配给多个组中的一个,使得用于包括所述多个组中的每个组的符号的统计权重和之间的差别最小。
185.根据权利要求183所述的装置,其中所述相对使用频率包括所述语言中的单词的第一字符中的符号的相对使用频率。
186.一种用于创建关键字字符串数据库的装置,所述装置包括:
存储器,用于存储所述关键字字符串数据库;以及
处理器,用于:
确定一个或多个候选关键字字符串以存储在所述数据库中;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量,所述一个或多个位向量的每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个候选关键字字符串中的单词的第一符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
187.一种用于关键字增量搜索的装置,所述装置包括:
用户界面,用于接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串,每个符号代表搜索字符串中的单词的第一符号,所述用户界面还用于呈现任何匹配的关键字字符串;以及
搜索引擎,与所述用户界面通信,并且用于:
至少部分地基于所述输入关键字字符串创建位向量,每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个符号的位位置的位被置位;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组;以及
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串。
188.根据权利要求187所述的装置,其中所述装置还用于在预定时间之后取代所述搜索引擎。
189.根据权利要求188所述的装置,其中所述预定时间为两秒钟。
190.根据权利要求187所述的装置,其中所述装置还用于比较与关键字字符串中的关键字词首的顺序无关的所述位向量。
191.一种用于创建关键字字符串数据库的装置,所述装置包括:
存储器,用于存储所述关键字字符串数据库;以及
处理器,用于:
确定一个或多个候选关键字字符串以存储在所述数据库中;
至少部分地基于所述一个或多个候选关键字字符串创建一个或多个位向量,所述一个或多个位向量的每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个候选关键字字符串中的单词词首的符号的位位置的位被置位,所述一个或多个位向量用于比较输入位向量和所述一个或多个位向量,以指示由所述输入位向量代表的输入关键字字符串是否与所述一个或多个候选关键字字符串匹配;以及
将所述一个或多个位向量和指向所述一个或多个候选关键字字符串的引用存储在所述数据库中。
192.一种用于关键字增量搜索的装置,所述装置包括:
用户界面,用于接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串,所述用户界面还用于呈现任何匹配的关键字字符串;以及
搜索引擎,与所述用户界面通信,并且用于:
至少部分地基于所述输入关键字字符串创建位向量,每位对应于字母表中的一个或多个符号,具有对应于所述一个或多个符号中的单词词首的位位置的位被置位;
将所述位向量与代表至少一个候选关键字字符串的一个或多个其它位向量进行比较,以创建匹配位向量组;以及
将常规关键字匹配算法应用于由所述匹配位向量组代表的所述至少一个候选关键字字符串。
193.根据权利要求192所述的装置,其中所述装置还用于在预定时间之后取代所述搜索引擎。
194.根据权利要求193所述的装置,其中所述预定时间为两秒钟。
195.根据权利要求192所述的装置,其中所述装置还用于比较与关键字字符串中的关键字词首的顺序无关的所述位向量。
196.一种用于关键字增量搜索的装置,所述装置包括:
用户界面,用于接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串,所述用户界面还用于呈现任何匹配的关键字字符串;以及
搜索引擎,与所述用户界面通信,并且用于:
接收包括一个或多个包括一个或多个符号的单词的输入关键字字符串,每个符号代表搜索字符串中的单词的第一符号;
接收层次,所述层次的元素包括中间节点和叶节点,其代表一个或多个包括一个或多个包括一个或多个符号的单词的关键字字符串;
创建对应于所述层次中的所述一个或多个关键字字符串的层次位向量;
为与所述输入关键字字符串匹配,搜索所述层次位向量,所述装置还用于,为所述层次的每个所述元素:
保存所述输入关键字字符串;
对元素的位向量和至少部分地基于所述输入关键字字符串的位向量应用逻辑“和”操作,所述应用产生一个结果;
如果所述结果为非零,从所述输入关键字字符串中除去作为所述元素中单词词首的所述输入关键字字符串中的任何单词;
如果所述输入关键字字符串为空,将所述元素添加到匹配项列表;以及
恢复所述输入关键字字符串;以及
呈报所述匹配项列表;以及
将常规关键字匹配算法应用于由所述匹配项列表中的一个或多个元素所表示的所述至少一个关键字字符串。
197.一种用于比较关键字字符串的方法,所述方法包括:
将一种语言中的至少一个符号中的每个分配给多个组中的一个;以及
至少部分地基于第一关键字字符串的至少一个符号与第二关键字字符串的至少一个对应符号是否被分配到相同的组,来比较所述第一关键字字符串和所述第二关键字字符串。
198.根据权利要求197所述的方法,其中所述多个组对应于电话键盘符号分组。
199.一种用于比较关键字字符串的方法,所述方法包括:
将一种语言中的至少一个符号中的每个分配给多个组中的一个的步骤;以及
至少部分地基于第一关键字字符串的至少一个符号与第二关键字字符串的至少一个对应符号是否被分配到相同的组,
来比较所述第一关键字字符串和所述第二关键字字符串的步骤。
200.根据权利要求199所述的方法,其中所述多个组对应于电话键盘符号分组。
201.一种机器可读的程序存储装置,包括有可由机器执行的指令程序,以执行一种用于比较关键字字符串的方法,所述方法包括:
将一种语言中的至少一个符号中的每个分配给多个组中的一个;以及
至少部分地基于第一关键字字符串的至少一个符号与第二关键字字符串的至少一个对应符号是否被分配到相同的组,来比较所述第一关键字字符串和所述第二关键字字符串。
202.根据权利要求201所述的程序存储装置,其中所述多个组对应于电话键盘符号分组。
203.一种用于比较关键字字符串的设备,所述设备包括:
用于将一种语言中的至少一个符号中的每个分配给多个组中的一个的装置;以及
用于至少部分地基于第一关键字字符串的至少一个符号与第二关键字字符串的至少一个对应符号是否被分配到相同的组,来比较所述第一关键字字符串和所述第二关键字字符串的装置。
204.根据权利要求203所述的装置,其中所述多个组对应于电话键盘符号分组。
205.一种用于比较关键字字符串的装置,所述装置包括:
存储器,用于存储所述关键字字符串;以及
处理器,用于:
将一种语言中的至少一个符号中的每个分配给多个组中的一个;以及
至少部分地基于第一关键字字符串的至少一个符号与第二关键字字符串的至少一个对应符号是否被分配到相同的组,来比较所述第一关键字字符串和所述第二关键字字符串。
206.根据权利要求205所述的装置,其中所述多个组对应于电话键盘符号分组。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/687,218 US20050086234A1 (en) | 2003-10-15 | 2003-10-15 | Incremental search of keyword strings |
US10/687,218 | 2003-10-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1890669A true CN1890669A (zh) | 2007-01-03 |
Family
ID=34435424
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2004800369504A Pending CN1890669A (zh) | 2003-10-15 | 2004-10-15 | 关键字字符串的增量搜索 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20050086234A1 (zh) |
EP (1) | EP1683048A4 (zh) |
CN (1) | CN1890669A (zh) |
CA (1) | CA2542625A1 (zh) |
WO (1) | WO2005036414A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010088833A1 (zh) * | 2009-02-03 | 2010-08-12 | 华为技术有限公司 | 字符串处理方法及系统和匹配器 |
CN102402561A (zh) * | 2010-09-19 | 2012-04-04 | 中国移动通信集团四川有限公司 | 一种搜索方法和装置 |
CN104484381A (zh) * | 2010-02-26 | 2015-04-01 | 电子湾有限公司 | 用于搜索多个串的方法和系统 |
CN109086467A (zh) * | 2017-06-14 | 2018-12-25 | 上海复旦微电子集团股份有限公司 | 可编程逻辑器件的i/o单元布局方法及装置、介质及设备 |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060085283A1 (en) * | 2004-10-19 | 2006-04-20 | William Griffiths | System and method for linking automobile buyers and sellers |
US7895218B2 (en) * | 2004-11-09 | 2011-02-22 | Veveo, Inc. | Method and system for performing searches for television content using reduced text input |
US20070266406A1 (en) * | 2004-11-09 | 2007-11-15 | Murali Aravamudan | Method and system for performing actions using a non-intrusive television with reduced text input |
WO2006053011A2 (en) * | 2004-11-09 | 2006-05-18 | Veveo, Inc. | Method and system for secure sharing, gifting, and purchasing of content on television and mobile devices |
US20060101504A1 (en) * | 2004-11-09 | 2006-05-11 | Veveo.Tv, Inc. | Method and system for performing searches for television content and channels using a non-intrusive television interface and with reduced text input |
US8122034B2 (en) * | 2005-06-30 | 2012-02-21 | Veveo, Inc. | Method and system for incremental search with reduced text entry where the relevance of results is a dynamically computed function of user input search string character count |
JP4639124B2 (ja) * | 2005-08-23 | 2011-02-23 | キヤノン株式会社 | 文字入力補助方法及び情報処理装置 |
US7788266B2 (en) | 2005-08-26 | 2010-08-31 | Veveo, Inc. | Method and system for processing ambiguous, multi-term search queries |
US7779011B2 (en) | 2005-08-26 | 2010-08-17 | Veveo, Inc. | Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results thereof |
US7644054B2 (en) * | 2005-11-23 | 2010-01-05 | Veveo, Inc. | System and method for finding desired results by incremental search using an ambiguous keypad with the input containing orthographic and typographic errors |
WO2007089663A2 (en) * | 2006-01-27 | 2007-08-09 | Veveo, Inc. | System and method for incremental user query on handheld device |
US7657526B2 (en) * | 2006-03-06 | 2010-02-02 | Veveo, Inc. | Methods and systems for selecting and presenting content based on activity level spikes associated with the content |
US8073860B2 (en) * | 2006-03-30 | 2011-12-06 | Veveo, Inc. | Method and system for incrementally selecting and providing relevant search engines in response to a user query |
US20070244863A1 (en) * | 2006-04-13 | 2007-10-18 | Randy Adams | Systems and methods for performing searches within vertical domains |
JP2009533767A (ja) * | 2006-04-13 | 2009-09-17 | セアルクフメ,インコーポレーテッド | 垂直ドメイン内で検索を実行するシステム及び方法 |
US7461061B2 (en) | 2006-04-20 | 2008-12-02 | Veveo, Inc. | User interface methods and systems for selecting and presenting content based on user navigation and selection actions associated with the content |
WO2008034057A2 (en) | 2006-09-14 | 2008-03-20 | Veveo, Inc. | Methods and systems for dynamically rearranging search results into hierarchically organized concept clusters |
WO2008045690A2 (en) | 2006-10-06 | 2008-04-17 | Veveo, Inc. | Linear character selection display interface for ambiguous text input |
US8078884B2 (en) * | 2006-11-13 | 2011-12-13 | Veveo, Inc. | Method of and system for selecting and presenting content based on user identification |
US20080313574A1 (en) * | 2007-05-25 | 2008-12-18 | Veveo, Inc. | System and method for search with reduced physical interaction requirements |
WO2008148009A1 (en) * | 2007-05-25 | 2008-12-04 | Veveo, Inc. | Method and system for unified searching across and within multiple documents |
US8549424B2 (en) | 2007-05-25 | 2013-10-01 | Veveo, Inc. | System and method for text disambiguation and context designation in incremental search |
US8943539B2 (en) | 2007-11-21 | 2015-01-27 | Rovi Guides, Inc. | Enabling a friend to remotely modify user data |
GB2470606B (en) * | 2009-05-29 | 2011-05-04 | Paul Siani | Electronic reading device |
US9166714B2 (en) | 2009-09-11 | 2015-10-20 | Veveo, Inc. | Method of and system for presenting enriched video viewing analytics |
US20110191330A1 (en) | 2010-02-04 | 2011-08-04 | Veveo, Inc. | Method of and System for Enhanced Content Discovery Based on Network and Device Access Behavior |
US8352468B2 (en) * | 2010-04-07 | 2013-01-08 | Apple Inc. | Top search hits based on learned user preferences |
WO2012034069A1 (en) | 2010-09-10 | 2012-03-15 | Veveo, Inc. | Method of and system for conducting personalized federated search and presentation of results therefrom |
EP2455844A1 (en) * | 2010-11-10 | 2012-05-23 | Michael Rabben | Computerized method to associatively and efficiently select elements in textual electronic lists and to operate computer-implemented programs using natural language commands |
US20120185332A1 (en) * | 2011-01-14 | 2012-07-19 | Google Inc. | Serving Advertisements Based on Article Availability |
US10565198B2 (en) | 2015-06-23 | 2020-02-18 | Microsoft Technology Licensing, Llc | Bit vector search index using shards |
US10242071B2 (en) | 2015-06-23 | 2019-03-26 | Microsoft Technology Licensing, Llc | Preliminary ranker for scoring matching documents |
US11392568B2 (en) | 2015-06-23 | 2022-07-19 | Microsoft Technology Licensing, Llc | Reducing matching documents for a search query |
US11281639B2 (en) | 2015-06-23 | 2022-03-22 | Microsoft Technology Licensing, Llc | Match fix-up to remove matching documents |
US10467215B2 (en) | 2015-06-23 | 2019-11-05 | Microsoft Technology Licensing, Llc | Matching documents using a bit vector search index |
US10733164B2 (en) | 2015-06-23 | 2020-08-04 | Microsoft Technology Licensing, Llc | Updating a bit vector search index |
US10229143B2 (en) | 2015-06-23 | 2019-03-12 | Microsoft Technology Licensing, Llc | Storage and retrieval of data from a bit vector search index |
CN107102998A (zh) * | 2016-02-22 | 2017-08-29 | 阿里巴巴集团控股有限公司 | 一种字符串距离计算方法和装置 |
JP6805720B2 (ja) * | 2016-10-21 | 2020-12-23 | 富士通株式会社 | データ検索プログラム、データ検索装置およびデータ検索方法 |
JP7059516B2 (ja) | 2017-03-29 | 2022-04-26 | 富士通株式会社 | 符号化プログラム、符号化装置および符号化方法 |
US10678506B2 (en) * | 2017-08-01 | 2020-06-09 | Arm Limited | Matching consecutive values in a data processing apparatus |
US11042375B2 (en) | 2017-08-01 | 2021-06-22 | Arm Limited | Counting elements in data items in a data processing apparatus |
US10817297B2 (en) * | 2019-03-30 | 2020-10-27 | Intel Corporation | Method and apparatus for vector-matrix comparison |
CN113312523B (zh) * | 2021-07-30 | 2021-12-14 | 北京达佳互联信息技术有限公司 | 字典生成、搜索关键字推荐方法、装置和服务器 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4814972A (en) * | 1983-10-23 | 1989-03-21 | Keycom Electronic Publishing | Method and videotex apparatus for fast access of remotely located information |
US4754326A (en) * | 1983-10-25 | 1988-06-28 | Keycom Electronic Publishing | Method and apparatus for assisting user of information retrieval systems |
US4649533A (en) * | 1983-10-25 | 1987-03-10 | Keycom Electronic Publishing | Method and apparatus for retrieving remotely located information |
US4935870A (en) * | 1986-12-15 | 1990-06-19 | Keycom Electronic Publishing | Apparatus for downloading macro programs and executing a downloaded macro program responding to activation of a single key |
CA2000006C (en) * | 1989-01-23 | 1994-07-12 | Walter W. Chang | Combinatorial signatures for data encoding and searching |
JPH06505816A (ja) * | 1990-10-05 | 1994-06-30 | マイクロソフト コーポレイション | 情報検索システム及び方法 |
JP3132738B2 (ja) * | 1992-12-10 | 2001-02-05 | ゼロックス コーポレーション | テキスト検索方法 |
US5774588A (en) * | 1995-06-07 | 1998-06-30 | United Parcel Service Of America, Inc. | Method and system for comparing strings with entries of a lexicon |
US5903888A (en) * | 1997-02-28 | 1999-05-11 | Oracle Corporation | Method and apparatus for using incompatible types of indexes to process a single query |
JP4467791B2 (ja) * | 1997-11-24 | 2010-05-26 | ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー | 情報管理及び検索 |
US6070164A (en) * | 1998-05-09 | 2000-05-30 | Information Systems Corporation | Database method and apparatus using hierarchical bit vector index structure |
EP2264895A3 (en) * | 1999-10-27 | 2012-01-25 | Systems Ltd Keyless | Integrated keypad system |
US6496836B1 (en) * | 1999-12-20 | 2002-12-17 | Belron Systems, Inc. | Symbol-based memory language system and method |
EP1217540A1 (en) * | 2000-11-29 | 2002-06-26 | Lafayette Software Inc. | Methods of organizing data and processing queries in a database system, and database system and software product for implementing such method |
CA2340531C (en) * | 2001-03-12 | 2006-10-10 | Ibm Canada Limited-Ibm Canada Limitee | Document retrieval system and search method using word set and character look-up tables |
US6751607B2 (en) * | 2001-04-04 | 2004-06-15 | Thomas A. Kraay | System and method for the identification of latent relationships amongst data elements in large databases |
US7761175B2 (en) * | 2001-09-27 | 2010-07-20 | Eatoni Ergonomics, Inc. | Method and apparatus for discoverable input of symbols on a reduced keypad |
US7343042B2 (en) * | 2002-09-30 | 2008-03-11 | Pitney Bowes Inc. | Method and system for identifying a paper form using a digital pen |
US7305557B2 (en) * | 2003-06-20 | 2007-12-04 | International Business Machines Corporation | Management and recovery of data object annotations using digital fingerprinting |
-
2003
- 2003-10-15 US US10/687,218 patent/US20050086234A1/en not_active Abandoned
-
2004
- 2004-10-15 WO PCT/CA2004/001832 patent/WO2005036414A1/en active Application Filing
- 2004-10-15 CA CA002542625A patent/CA2542625A1/en not_active Abandoned
- 2004-10-15 CN CNA2004800369504A patent/CN1890669A/zh active Pending
- 2004-10-15 EP EP04789740A patent/EP1683048A4/en not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010088833A1 (zh) * | 2009-02-03 | 2010-08-12 | 华为技术有限公司 | 字符串处理方法及系统和匹配器 |
CN104484381A (zh) * | 2010-02-26 | 2015-04-01 | 电子湾有限公司 | 用于搜索多个串的方法和系统 |
CN104484381B (zh) * | 2010-02-26 | 2018-05-22 | 电子湾有限公司 | 用于搜索多个串的方法和系统 |
CN102402561A (zh) * | 2010-09-19 | 2012-04-04 | 中国移动通信集团四川有限公司 | 一种搜索方法和装置 |
CN102402561B (zh) * | 2010-09-19 | 2014-03-26 | 中国移动通信集团四川有限公司 | 一种搜索方法和装置 |
CN109086467A (zh) * | 2017-06-14 | 2018-12-25 | 上海复旦微电子集团股份有限公司 | 可编程逻辑器件的i/o单元布局方法及装置、介质及设备 |
Also Published As
Publication number | Publication date |
---|---|
US20050086234A1 (en) | 2005-04-21 |
CA2542625A1 (en) | 2005-04-21 |
WO2005036414A1 (en) | 2005-04-21 |
EP1683048A1 (en) | 2006-07-26 |
EP1683048A4 (en) | 2007-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1890669A (zh) | 关键字字符串的增量搜索 | |
US7003725B2 (en) | Method and system for normalizing dirty text in a document | |
CN1159661C (zh) | 用于中文的标记和命名实体识别的系统 | |
CN107704102B (zh) | 一种文本输入方法及装置 | |
CN1096038C (zh) | 基于贝叶斯网络的用于文件检索的方法和设备 | |
US20170060956A1 (en) | Anomaly, association and clustering detection | |
CN1266246A (zh) | 输入字符串的设备和方法 | |
CN1680935A (zh) | 通过用户建模的有效大写化 | |
CN1725212A (zh) | 指数模型的自适应 | |
CN1426561A (zh) | 带有跨语言阅读向导的计算机辅助阅读系统和方法 | |
CN1607491A (zh) | 使用操纵杆输入中文的系统和方法 | |
CN1670723A (zh) | 改进的拼写检查系统和方法 | |
CN1761958A (zh) | 用于查找串的方法和设备 | |
CN1910573A (zh) | 用来识别并分类命名实体的系统 | |
EP0890911A2 (en) | Multistage intelligent string comparison method | |
CN1282934A (zh) | 相似字选取和文件检索的方法和系统 | |
CN109948122B (zh) | 输入文本的纠错方法、装置及电子设备 | |
CN101055588A (zh) | 获取限制词信息的方法、优化输出的方法和输入法系统 | |
CN102971729A (zh) | 将可操作属性归于描述个人身份的数据 | |
CN102867049A (zh) | 一种基于单词查找树实现的汉语拼音快速分词方法 | |
CN1877578A (zh) | 文档检索装置及方法 | |
CN1256650C (zh) | 一种中文整句输入法 | |
CN1928860A (zh) | 用于校正按键错误的方法、搜索引擎和搜索系统 | |
CN1918570A (zh) | 字符显示方法 | |
US8549023B2 (en) | Method and apparatus for resorting a sequence of sorted strings |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20070103 |