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

ASP
ASP 编程中20个非常有用的例子(一)
ASP 编程中20个非常有用的例子(二)
ASP基础教程:ADO存取数据库时如何分页显示
ASP基础教程:其它的ASP常用组件
ASP基础教程:学习ASP中子程序的应用
ASP基础教程之ASP程序对Cookie的处理
ASP基础教程之实例学习ASP Response 对象
ASP基础教程之ASP AdRotator 组件的使用
ADO初学者教程:ADO 通过GetString()加速脚本
初学者来认识OLEDB和ODBC的区别
ASP常见数学函数 Abs Atn Cos 等详细详解
VBScript新手入门初学教程:VBScript简介
有用的无声递交表单的客户端函数
Windows 2003 安装设置iis
ASP技巧实例:几行代码解决防止表单重复提交
ASP读sql数据时出现乱码问题的解决方法
ASP技巧实例:使用ASP记录在线用户的数量
ASP技巧实例:关于对表单操作的程序
ASP技巧实例:ASP实现最简洁的多重查询的解决方案
ASP实例:利用缓存提高数据显示效率

ASP 中的 例子:文本搜索


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 100 ::
收藏到网摘: 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>