最近在做ASP.NET 网页 搜索功能
大致要实现的效果是:
我有一条数据是“123456789”
我在搜素框内输入“987”或则“135”
都能搜索到这条数据
就类似于“百度那种搜索方式”
这个功能怎么实现请各位大神 指点迷津!ASP.NET类似百度的搜索方式智能补全

解决方案 »

  1.   

    你需要创建一种树形索引结构,这个树上每一个节点都是一个char。如果你学过数据结构课程,那么可以先复习一下什么叫做“倒排索引”。
      

  2.   

    不过基本上,很少有对每一个char进行索引的。大多数都是对word(分词的结果)进行索引。对char进行索引,往往出现在“地址查询”之类的地方。例如快递业可能需要根据用户录入的目的地地址,自动计算出邮政编号;报警或者抢修呼叫中心系统可能需要根据用户说出的住址来自动计算出地图上的经纬度坐标。这时候需要对地址的每一个char进行索引。但是这就不会像你那样按照987或者135去查询,而是能够高速地查询到345还是3456就行了。
      

  3.   

    用百度api
    如果不能联网
    最好写个列表,确定你的关键字
    分词的就算大工程了