荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: dtnl (的特呢了), 信区: Homepage
标  题: 原创:如何将搜索结果按相似度降序排列出来?
发信站: 荔园晨风BBS站 (Fri Dec 22 22:06:55 2006), 站内

设计思路:
1、将关键词分三类:如a“超女何洁”、b“超女  何洁”、c“超女何节”

2、查找内容中完成匹配a,语法 content like '%"& keyword &"%'

3、查找内容中部分匹配b,语法:
   keywordStr=split(keyword," ")
   for i=0 to ubound(keywordStr)
   sql=sql&"content like"&"'%"& keywordStr(i) &"%'&" or"
   next
   执行时输出的语句如:content like '超女' or content like '何洁'

4、查找内容中分词匹配c,语法:
   (语法略)
   执行输入语句如:content like '超女何节' or content like '超女何' or content
like '超女' or content like '何节' or content like '女何节'

5、查找内容中单字匹配c,语法:
    wi=replace(keyword," ","") '却掉关键词中的空格
    for j= 1 to len(wi)
    wl=right(left(wi,j),1) '截取每个字符
    wt=wt&wl&"|"
    next                   '将关键词分成单字串,如“超|女|何|节|”
    ws=split(wt,"|")
    for j= 0 to ubound(ws)-1
    for i = 0 to 4
    sql=sql&"content like '%"&ws(j)&"%' or "
    next
    next
    sql="("&sql&" k1='"& w &"') ORDER By id DESC"
    执行输入语句为:content like '超' or content like '女' or content like '何'
or content like '节' or content like '超女何节'

目前来说,模糊搜索主要是效率问题。时间超过0.01秒的搜索都不是好的算法。
我根据以上的设计思路,做出来的搜索时间也不是好的算法,但终究还是把要得到的东西搜
索出来。

问题是,怎么样使得出的结果按相似度降序列表出来呢?

转载自CSDN:http://community.csdn.net/Expert/topic/5250/5250476.xml?temp=.7870447
--

※ 来源:·荔园晨风BBS站 http://bbs.szu.edu.cn·[FROM: 192.168.125.100]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店