繁体中文
设为首页
加入收藏
当前位置:ASP技术首页 >> FSO专题 >> 文本搜索

文本搜索

2004-10-01 08:26:10  作者:  来源:互联网  浏览次数:41  文字大小:【】【】【
简介:<% Head = "搜索" SearchString = Request("SearchString") count=0 '把当前目录的实际路径转换为虚拟路径 Function UnMapPath( Path ) UnMapPath = Replace(Mid(Path, Len(Server.MapP...
关键字:文本 搜索

<%

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, "", vbTextCompare)</p> <p>pos2 = InStr(1, content, "", 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 = "" & title & ""

FileLink = "

    ·" & FileLink & "
"

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

%>

content="text/html; charset=gb_2312-80">

<%=Head%>

<%=Head%>


请输入欲搜索的内容:

size="20" name="SearchString" value="<%=SearchString%>">

type="submit" value="搜索">

<%

Set fs = Server.CreateObject("Scripting.FileSystemObject")

Set fd = fs.GetFolder( Server.MapPath("/") ) '设置开始搜索的路径!

If SearchString <> "" Then

Response.Write "

搜索" & SearchString & "结果如下:

"

SearchFolder fd,SearchString

End If

%>


责任编辑:admin
相关文章