论文部分内容阅读
[摘要]网站实现站内检索已经成为一个站点的基本要求,也是站点维护者必须解决的问题,本文以ASP技术为例,说明了如何利用递归算法实现在站内的自动检索。
[关键词]动态网站 站内搜索 递归 文件检索
自从有了计算机以后,人类开始用计算机保存信息,有保存,就有查找,于是檢索技术诞生了。随着计算机网络的迅猛发展,文本检索技术的发展发展可谓日新月异、与时俱进,人们开始习惯互联网的检索时代,站内检索的需求也已经显露出来。
一、为什么有了搜索引擎还需要站内检索
用网际搜索引擎不是直接可以查找吗?这其中有两个问题:1.搜索足球,你会搜索到48,300,000个网页,也不知道我公司的排在第10,000页还是10,001页,搜索者可能永远也不会去看。2.网际搜索引擎通过网络Spider收集网页,对于网站内隐藏很深的网页是很难检索到的。
二、本文实现的功能
1.目前互联网采用较多的一种技术是利用数据库实现站内搜索。该方法固然有其优势,但一个不容忽视的方面是该方法需要较多的后期维护,而且不支持文本型文件的检索,对于关键字的整理也很难取舍。
2.本文提供的程序可以将其放在站点的任何目录下,它将对该站点下的所有文本型文件进行检索,支持下级无限目录。
三、该系统采用的相关技术和功能实现
1.REQUEST和RESPONSE对象在ASP中的应用。
2.ASP环境变量在应用程序中的作用。
3.服务器端文件和文件夹的操作技术的具体应用。
4.VBScript的字符串操作函数在程序设计中的灵活性。
5.递归算法在程序设计中的强大功能。
6.我们只查找文本类型的文件,即能用记事本打开查看内容的文件类型,包括.htm、.html、.js、.css、.txt、.asp、.xml等文件。
7.把查找到的结果显示出来,包括关键字附近的内容及具体的文件路径。
8.若被检索文件中含有多处关键字,只显示第一处。
9.为安全及显示效果问题,我们去掉文件标签后显示;如果标签内部含有关键字,可以检索出来,但无法显示其具体内容。
10.程序代码在IIS5.1下调试通过。
四、关键代码及说明
<%
If Request(“Caps”) = “on” Then bolCaps = 0 Else bolCaps = 1 //0区分大小写,1不区分
Set objFSO = Server.CreateObject(“Scripting.FileSystemObject”)
strRoot=left(request.servervariables(“path_info”),InStrRev(request.servervariables(“path_info”),“/”)-1) //取得该文件的虚拟路径
RealPath=Server.MapPath(strroot)//取得完整的实际路径
VirtualPath=“http://”
[关键词]动态网站 站内搜索 递归 文件检索
自从有了计算机以后,人类开始用计算机保存信息,有保存,就有查找,于是檢索技术诞生了。随着计算机网络的迅猛发展,文本检索技术的发展发展可谓日新月异、与时俱进,人们开始习惯互联网的检索时代,站内检索的需求也已经显露出来。
一、为什么有了搜索引擎还需要站内检索
用网际搜索引擎不是直接可以查找吗?这其中有两个问题:1.搜索足球,你会搜索到48,300,000个网页,也不知道我公司的排在第10,000页还是10,001页,搜索者可能永远也不会去看。2.网际搜索引擎通过网络Spider收集网页,对于网站内隐藏很深的网页是很难检索到的。
二、本文实现的功能
1.目前互联网采用较多的一种技术是利用数据库实现站内搜索。该方法固然有其优势,但一个不容忽视的方面是该方法需要较多的后期维护,而且不支持文本型文件的检索,对于关键字的整理也很难取舍。
2.本文提供的程序可以将其放在站点的任何目录下,它将对该站点下的所有文本型文件进行检索,支持下级无限目录。
三、该系统采用的相关技术和功能实现
1.REQUEST和RESPONSE对象在ASP中的应用。
2.ASP环境变量在应用程序中的作用。
3.服务器端文件和文件夹的操作技术的具体应用。
4.VBScript的字符串操作函数在程序设计中的灵活性。
5.递归算法在程序设计中的强大功能。
6.我们只查找文本类型的文件,即能用记事本打开查看内容的文件类型,包括.htm、.html、.js、.css、.txt、.asp、.xml等文件。
7.把查找到的结果显示出来,包括关键字附近的内容及具体的文件路径。
8.若被检索文件中含有多处关键字,只显示第一处。
9.为安全及显示效果问题,我们去掉文件标签后显示;如果标签内部含有关键字,可以检索出来,但无法显示其具体内容。
10.程序代码在IIS5.1下调试通过。
四、关键代码及说明
<%
If Request(“Caps”) = “on” Then bolCaps = 0 Else bolCaps = 1 //0区分大小写,1不区分
Set objFSO = Server.CreateObject(“Scripting.FileSystemObject”)
strRoot=left(request.servervariables(“path_info”),InStrRev(request.servervariables(“path_info”),“/”)-1) //取得该文件的虚拟路径
RealPath=Server.MapPath(strroot)//取得完整的实际路径
VirtualPath=“http://”