当前位置: 首页 > 图文教程 > 网络编程 > ASP > asp 关键词高亮显示(不区分大小写)

ASP
Web程序中网页间数据传递方法小结
加速ASP程序的显示速度
一个求最大值与最小值的函数
对Session和Cookie的区分与理解
ASP VBScript 函数速查表
用Asp隐藏文件路径,实现防盗链
如何使用ASP生成HTML文件
常用Email组件发送函数
用asp实现QQ在线查询
创建一个ASP通用分页类(一)
创建一个ASP通用分页类(二)
如何使用ASP制作类似安装向导的页面?
远程注册自己的组件
浅谈ASP中Request对象获取客户端数据的顺序
一个拷贝整个文件夹(包括子文件夹)的方法
十天学会ASP之第一天
十天学会ASP之第二天
十天学会ASP之第三天
十天学会ASP之第四天
十天学会ASP之第五天

ASP 中的 asp 关键词高亮显示(不区分大小写)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 204 ::
收藏到网摘: n/a

用ASP做搜索很容易,但要实现智能搜索这类就比较累一点,其实任何程序都差不多,主要还是看数据库的处理能力,一般小网站ASP经常跟ACCESS数据库搭配 在这种配置下我们要实现关键词不区分大小写搜索并高亮显示要借助ASP的正则处理了,请看下面代码:
复制代码 代码如下:

<%
Function Takeout(patrn,string1,colors)
'提取搜索关键字匹配文字
Dim regEx, Match, Matches, tt ' 建立变量。
Set regEx = New RegExp ' 建立正则表达式。
regEx.Pattern = patrn ' 设置模式。
regEx.IgnoreCase = True ' 设置是否区分大小写。
regEx.Global = True ' 设置全局可用性。
Set Matches = regEx.Execute(string1) ' 执行搜索。
For Each Match in Matches ' 遍历 Matches 集合。
RetStr = RetStr & Match.Value & " "
Next
RetStr = trim(RetStr)
if instr(RetStr," ")>0 then
for tt = 0 to ubound(split(RetStr," "))
string1 = replace(string1,split(RetStr," ")(tt),"<font color="""&colors&""">"&split(RetStr," ")(tt)&"</font>")
next
else
string1 = replace(string1,RetStr,"<font color="""&colors&""">"&RetStr&"</font>")
end if
Takeout = string1
End Function
response.write Takeout("jOeKOe", "Joekoe乔客双语版","red")
Function Highlight(strContent,keyword) '标记高亮关键字
Dim RegEx
Set RegEx=new RegExp
RegEx.IgnoreCase =True '不区分大小写
RegEx.Global=True
Dim ArrayKeyword,i
ArrayKeyword = Split(keyword," ")'用空格隔开的多关键字
For i=0 To Ubound(ArrayKeyword)
RegEx.Pattern="("&ArrayKeyword(i)&")"
strContent=RegEx.Replace(strContent,"<font color=red>$1</font>" )
Next
Set RegEx=Nothing
Highlight=strContent
End Function
response.write Highlight("Joekoe乔客双语版","jOeKOe")
%>