如何做一个文本搜索?_编程10000问教程-查字典教程网
如何做一个文本搜索?
如何做一个文本搜索?
发布时间:2016-12-29 来源:查字典编辑
摘要:0'从第一个字符开始检查content里面是否有S.IfSearchFileThen'如果有,则提出文件title存入变量.pos1=InS...

<%

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>

<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>

[1]

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新编程10000问学习
    热门编程10000问学习
    编程开发子分类