当前位置: 首页 > 图文教程 > 网络编程 > ASP > 文本搜索

ASP
asp数个使用技巧
存储过程里的递归 实现方法
非常不错的列出sql服务器上所有数据库的asp代码
防范ASP木马的十大基本原则强列建议看下
雷客图ASP站长安全助手的ASP木马查找功能
防止别人盗链的好方法推荐
图片的入库与读取的方法
用asp实现无组件生成验证码的方法2种
用asp实现检测文件编码
[asp]怎么添加验证码的解决方法
ASP文章系统解决方案实现上一页下一页
ASP编程入门进阶(三):接触脚本程序
ASP编程入门进阶(四):内置对象Request
ASP编程入门进阶(五):内置对象Response
ASP编程入门进阶(六):Cookies讲座
ASP编程入门进阶(八):内置对象Session
ASP编程入门进阶(九):内置对象Application
ASP编码优化技巧8则
ASP编程入门进阶(十):Global.asa文件
ASP编程入门进阶(十一):Chat聊天程序

ASP 中的 文本搜索


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 47 ::
收藏到网摘: n/a

<%
Head = "搜索"
SearchString = Request("SearchString")
count=0
'把当前目录的实际路径转换为虚拟路径
Function UnMapPath( Path )
UnMapPath = Replace(Mid(Path, Len(Server.MapPath("/")) + 1), "\", "/")
End Function

Function SearchFile( f, s, title )
Set fo = fs.OpenTextFile(f)
content = fo.ReadAll'读全部文本到content
fo.Close
SearchFile = InStr(1, content, S, vbTextCompare) > 0 '从第一个字符开始检查content里面是否有S
If SearchFile Then'如果有,则提出文件TITLE存入变量
pos1 = InStr(1, content, "<TITLE>", vbTextCompare)
pos2 = InStr(1, content, "</TITLE>", vbTextCompare)
title = ""
If pos1 > 0 And pos2 > 0 Then'取TITLE标记中间的字符
title = Mid( content, pos1 + 7, pos2 - pos1 - 7 )
End If
End If
End Function
Function FileLink( f, title )
vPath = UnMapPath( f.Path )'取路径
If title = "" Then title = f.Name'做链接
FileLink = "<A HREF=""" & vPath & """>" & title & "</A>"
FileLink = "<UL>·" & FileLink & "</UL>"
End Function
Sub SearchFolder( fd, s )
found = False
For each f In fd.Files
pos = InStrRev(f.Path, "." )
If pos > 0 Then
ext = Mid(f.Path, pos + 1 )
Else
ext = ""
End If
If LCase(ext) = "htm" Then'显示扩展名字为HTM的文件
If SearchFile( f, s, title ) Then
Response.Write FileLink(f, title)
count=count+1
' Response.Write cstr(count)
End If
End If
Next
For each sfd In fd.SubFolders
SearchFolder sfd, s
Next
End Sub
%>
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=gb_2312-80">
<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
<title><%=Head%></title>
</head>
<body bgcolor="#FFFFFF">
<h1><%=Head%></h1>
<hr>
<form action="search.asp" method="Get">
<p>请输入欲搜索的内容: <input type="text"
size="20" name="SearchString" value="<%=SearchString%>"> <input
type="submit" value="搜索"> </p>
</form>
<%
Set fs = Server.CreateObject("Scripting.FileSystemObject")
Set fd = fs.GetFolder( Server.MapPath("/") ) '设置开始搜索的路径!
If SearchString <> "" Then
Response.Write "<H2>搜索<font color=red>" & SearchString & "</font>结果如下:</H2><P>"
SearchFolder fd,SearchString
End If
%>
<hr>
</body>
</html>