用ASP做一个TOP COOL的站内搜索 该搜索引擎由一个HTM文件一个ASP文件组成,主要是运用FILESYSTEMOBJECT组件来达到目的,功能强大,修改界面以后可以直接拿来使用,当然加上一点自己的东西就更加好了。 searchpage.htm 该HTM文件用来传入条件 ASP搜索引擎范例
高度敏感

返回结果
必须包括: 图片 Zip格式 JavaScript
------------------------------------------------------------------------ 显示结果的ASP程序 search.asp '<%=Request("SearchText")%>'的搜索结果 '<%=Request("SearchText")%>'的搜索结果
<% Const fsoForReading = 1 Dim objFile, objFolder, objSubFolder, objTextStream Dim bolCase, bolFileFound, bolTagFound Dim strCount, strDeTag, strExt, strFile, strContent, strRoot, strTag, strText, strTitle, strTitleL Dim reqImage, reqJavaS, reqLength, reqNumber, reqZip strFile = ".asp .htm .html .js .txt .css" strRoot = "/" strText = Request("SearchText") strTag = Chr(37) & Chr(62) bolFileFound = False bolTagFound = False If Request("Case") = "on" Then bolCase = 0 Else bolCase = 1 If Request("iImage") = "on" Then reqImage = " reqNumber or strText = "" Then Exit Sub If Response.IsClientConnected Then Set objTextStream = objFSO.OpenTextFile(objFile.Path,fsoForReading) strContent = objTextStream.ReadAll If InStr(1, strContent, strTag, bolCase) Then Else If Mid(objFile.Name, Len(objFile.Name) - 1, 1) = "." Then strExt = Mid(objFile.Name, Len(objFile.Name) - 1, 2) If Mid(objFile.Name, Len(objFile.Name) - 2, 1) = "." Then strExt = Mid(objFile.Name, Len(objFile.Name) - 2, 3) If Mid(objFile.Name, Len(objFile.Name) - 3, 1) = "." Then strExt = Mid(objFile.Name, Len(objFile.Name) - 3, 4) If Mid(objFile.Name, Len(objFile.Name) - 4, 1) = "." Then strExt = Mid(objFile.Name, Len(objFile.Name) - 4, 5) If InStr(1, strContent, strText, bolCase) And _ InStr(1, strContent, reqImage, 1) And _ InStr(1, strContent, reqZips, 1) And _ InStr(1, strContent, reqJavaS, 1) And _ Instr(1, strFile, strExt, 1) Then If InStr(1, strContent, "", 1) Then strTitle = Mid(strContent, InStr(1, strContent, "<TITLE>", 1) + 7, InStr(1, strContent, "", 1)) Else strTitle = "未命名" strCount = strCount + 1 Response.Write "
"& strCount &" - " & strTitle & "

" strTitleL = InStr(1, strContent, "", 1) - InStr(1, strContent, "", 1) + 7 strDeTag = "" bolTagFound = False Do While InStr(strContent, "<") bolTagFound = True strDeTag = strDeTag & " " & Left(strContent, InStr(strContent, "<") - 1) strContent = MID(strContent, InStr(strContent, ">") + 1) Loop strDeTag = strDeTag & strContent If Not bolTagFound Then strDeTag = strContent If reqLength = "0" Then Response.Write objFile.Path & "</DD></DL>" Else Response.Write Mid(strDeTag, strTitleL, reqLength) & "...<BR><b><FONT SIZE='2'>URL: " & objFile.Path & " - 上次修改时间: " & objFile.DateLastModified & " - " & FormatNumber(objFile.Size / 1024) & "Kbytes</FONT></b></DD></DL>" bolFileFound = True End If objTextStream.Close End If End If Next End Sub For Each objSubFolder in objFolder.SubFolders schSubFol(objSubFolder) Next If Not bolFileFound then Response.Write "没有匹配结果" If bolFileFound then Response.Write "<B>搜索结束</B>" Set objTextStream = Nothing Set objFolder = Nothing Set objFSO = Nothing %> </BODY></HTML>