文本搜索

<%

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>

(0)

相关推荐

  • 如何做一个文本搜索?

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

  • MongoDB学习之Text Search文本搜索功能

    前言 MongoDB支持对文本内容执行文本搜索操作,其提供了索引text index和查询操作$text来完成文本搜索功能.下面我们通过一个简单的例子来体验一下MongoDB提供的全文检索功能. 方法示例 1.新建blogs collection,并插入如下的document. db.blogs.insert({_id:1,title:"MongoDB text search",content:"this is a simple MongoDB text search int

  • 同文件夹内文本搜索器(vbs)

    <HTML><HEAD><TITLE>同文件夹内文本搜索器(vbs)</TITLE> <META http-equiv=Content-Type content="text/html; charset=gb2312"> <SCRIPT language=vbscript id=clientEventHandlersVBS> <!-- Dim fso, f, f1, fc,fn,s,uf1,ufn Sub B1

  • JavaScript简单实现关键字文本搜索高亮显示功能示例

    本文实例讲述了JavaScript简单实现关键字文本搜索高亮显示功能.分享给大家供大家参考,具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"

  • linux最快的文本搜索神器ripgrep(grep的最好代替者)

    前言 说到文本搜索工具,大家一定会知道 grep, 它是 linux 最有用并最常用的工具之一. 但如果要再一个大的工程项目中搜索某个关键词,大家也一定知道它比较耗时. 所以就有了很多替代工具,之前最出名的是 Ack,Ag 而最近又有了新的替代者 Ripgrep, 这个工具和 Ack/Ag 一样都使用了多线程的方法,但 rg 比它们更快 简介 ripgrep 是一个以行为单位的搜索工具, 它根据提供的 pattern 递归地在指定的目录里搜索.它是由 Rust 语言写成,相较与同类工具,它的特点

  • 文本搜索

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

  • Mongodb实战之全文搜索功能

    前言 众所周知在传统的关系型数据库中,我们通常将数据结构化,通过一系列表关联.聚合来查询我们所需的结果.而在非结构化的数据中,缺少这种预定义的结构,因而如何快速查询定位到我们所需要的结果,不是一件容易的事. Mongodb作为一种NoSQL数据库,非常适合存储和管理非结构化数据,例如互联网上的各种文本数据.假如我们用Mongodb存储了很多博客文章,那么如何快速找到所有关于"nodejs"这个主题的文章呢?Mongodb内建的全文搜索可以帮助我们完成这个功能.下面话不多说了,来一起看看

  • 详细讲解PostgreSQL中的全文搜索的用法

    开发Web应用时,你经常要加上搜索功能.甚至还不知能要搜什么,就在草图上画了一个放大镜. 搜索是项非常重要的功能,所以像elasticsearch和SOLR这样的基于lucene的工具变得很流行.它们都很棒.但使用这些大规模"杀伤性"的搜索武器前,你可能需要来点轻量级的,但又足够好的搜索工具. 所谓"足够好",我是指一个搜索引擎拥有下列的功能: 词根(Stemming) 排名/提升(Ranking / Boost) 支持多种语言 对拼写错误模糊搜索 方言的支持 幸运

  • 一天一个shell命令 linux文本内容操作系列-grep命令详解

    从这篇开始,是文本内容操作,区别于文本操作. Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户. shell,perl,python,一直都是文本操作的专家语言,而我们今后学习的的将是shell的噱头--文本操作.下面提到最常见的一个: grep 这算是文本内容的一个重量级选手,能根据某些规格在上千行的文本文件中查找

  • Linux中查看文本的小技巧(超实用!)

    前言 日常开发中,我们经常需要在服务器上进行各种文本,日志的查看操作,本文主要对常用的文本,日志查看技巧进行了一番总结和归纳,方便大家收藏起来后续查看使用: tail命令查看日志信息 实时监控日志: tail -f filename 实时监控10行日志信息: tail -10f filename 查看日志尾部的最后100行日志信息: tail -n 100 filename 查看日志100行之后的日志信息: tail -n +100 filename head命令查看文本信息 查看文本开始的头1

随机推荐