易截截图软件、单文件、免安装、纯绿色、仅160KB

简单的asp分词算法(正向最大匹配)

最近写站内搜索,所以研究了一下算法,该算法的原理如图显示。
以下是一个用asp写的简单的分词程序主要的代码,词库我已经用access建立好了。
如果要注重效率,MarLen的选取很是重要,否则效率会十分低下,这里MarLen我选取的是5。
 
dim faword : faword = ""
do while (len(fword) > 0)
tword = left(fword,5)
'response.write "tword--->" & tword & "<br />"
tlen = len(tword)
do while (tlen > 0)
fw = left(tword,tlen)
'response.write "fw--->" & fw & "<br />"
sql = "select fword from dict where fword='" & fw & "'"
set rsfff = connf.execute(sql)
if not rsfff.eof or tlen=1 then
faword = faword & fw & ","
'response.write fw & "<br />"
exit do
end if
tlen = tlen - 1
loop
'response.write "tlen--->" & tlen & "<br />"
fword = mid(fword,tlen+1)
'response.write "fword--->" & fword & "<br />"
loop
connf.close
dim querywords : querywords = split(faword,",")
querywords是保存关键词的数组。
分词就到这里了,对于如何利用分词的结果在数据库中查找结果也是值得研究的。
我这里用了清一色的“like”,“or” sql语句,效果不是很理想。
希望大家能够留言讨论。


相关文档:

ASP循环输出表格行tr的方法

  <%
for i=1 to rs.recordCount '变量i从1循环到数据库中的全部记录数
if (i mod 1 =1) then '每个tr即每行显示1个记录,可根据需要自行修改, 将左边的1修改为2即显示两行。
response.write "<tr align='center'>"
end if
%>
此处为要循环的内容
  <%if (i mod 1 = 0) then ......

ASP系列函数大全 网上收集的一些ASP函数及表达式

ASP系列函数大全-网上收集的一些ASP函数及表达式
ASP函数
大全 
ASP函数与VBSCRIPT类似,以下举一些常用的函数 
 
Array() 
 
函数返回一个数组 

 
表达式 Array(list) 
 
允许数据类型: 字符,数字均可 
 
实例: <% 
 
Dim
myArray() 
 
For i = 1 to 7 
 
Redim Preser ......

asp读取word 文档内容转换为二进制数据流

Dim FilePath,FileName
Set ObjFileStream = Server.CreateObject("ADODB.Stream")
ObjFileStream.Type = 1
ObjFileStream.Mode = 3
ObjFileStream.open
ObjFileStream.LoadfromFile FilePath&"\"&FileName&".doc"
ObjFileStream.Position = 0
response.binarywrite  ......

Asp ADODB.Stream对象的方法属性

Adodb.Stream是ADO的Stream对象,提供存取二进制数据或者文本流,从而实现对流的读、写和管理等操作.
有下列方法:
Cancel 方法
     使用方法如下
     Object.Cancel
    
说明:取消执行挂起的异步 Execute 或 Open 方法的调用。
Close  方法
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号