网络编程
位置:首页>> 网络编程>> Asp编程>> 使用Abot中文分词组件来开发ASP站内搜索引擎

使用Abot中文分词组件来开发ASP站内搜索引擎

 来源:西祠 发布时间:2007-10-18 13:36:00 

标签:分词,abot,搜索

1、汉语分词的由来使用ASP开发的中小企业的网站,对于站内搜索,往往只是简单的通过SQL语句匹配数据库。对于比较短的词语搜索,这个方法是有效的;但对于相对较长的词语,其局限性不难看出。

举个例子:1、用户在中小企业网站上搜索"宾馆",简单的SQL语句模糊查询,可以得到想要的结果,这是没有问题的。2、用户搜索"上海的宾馆",那么这个通过上述方法就很难找到答案了。这种情况下,我们有必要引入汉语分词机制,将"上海的宾馆"分解为"上海"、"宾馆","的"可以省略,然后根据拆分的词语,到数据库中去匹配答案。

2、ASP环境下的分词组件由于ASP是解释性语言,用ASP开发一套汉语分词系统的可行性不大。我们这里通过类似ASP调用ODBC等组件的方式,调用汉语分词组件。目前支持这方面的功能的组件不是很多,但是google一把,还是大海捞针找到了一个,在这里推荐给大家。

组件名称:Abot汉语分词系统使用方法:直接执行安装,分词组件会在系统中自动注册。在安装目录下,可以找到ACWPSCOM.asp的文件,是例子。

3、调用方法

Step 1:安装ACWPS20.exe

Step 2: 编辑ASP文件


'装载组件
Set obj = Server.CreateObject("ACWPSCOM.ACWPS")
'先装载词典
obj.init_Dict()
'然后分词
strRes = obj.doCWP("上海的宾馆", 12, 124)
strRes = obj.doCWP("要分词的内容", 12, 124)
'分词完成后释放词典
obj.release_Dict()
'释放组件
set obj = nothing


 要分词的内容可以通过参数传递过来;strRes是分词的结果,用'|'分隔开了。我们用asp提供的Split函数,将结果保存到一个数组里。


Dim WordArrayWordArray = Split(strRes, "|")
Dim ArraySize As IntegerArraySize = UBound(WordArray)
For i = 0 To ArraySize - 1
search_db (WordArray(i))
Next


如此以来,在ASP环境下也可以做出功能强大的站内搜索引擎,就这么简单。

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com