罗成全统单用结果中关键词高亮显示山东

2012 年 10 月 27 日6230

在ASP做的站内统单用中经常遇到这种效果,但要实现智能统单用这类就比较累一点,其实任何程序都差不多,主要还是看数据库的处理能力,一般小网站ASP经常跟ACCESS数据库搭配

在这种配置下我们要实现关键词不区分大小写统单用并高亮显示要借助ASP的正则处理了,请看下面代码:

代码如下: view sourceprint?01 <%

02 Function Takeout(patrn,string1,colors)

03 '提取统单用关键字匹配文字

04 Dim regEx, Match, Matches, tt ' 建立变量。

05 Set regEx = New RegExp ' 建立正则表达式。

06 regEx.Pattern = patrn ' 设置模式。

07 regEx.IgnoreCase = True ' 设置是否区分大小写。

08 regEx.Global = True ' 设置全局可用性。

09 Set Matches = regEx.Execute(string1) ' 执行统单用。

10 For Each Match in Matches ' 遍历 Matches 集合。

11 RetStr = RetStr & Match.Value & " "

12 Next

13 RetStr = trim(RetStr)

14 if instr(RetStr," ")>0 then

15 for tt = 0 to ubound(split(RetStr," "))

16 string1 = replace(string1,split(RetStr," ")(tt),"<font color="""&colors&""">"&split(RetStr," ")(tt)&"</font>")

17 next

18 else

19 string1 = replace(string1,RetStr,"<font color="""&colors&""">"&RetStr&"</font>")

20 end if

21 Takeout = string1

22 End Function

23 response.write Takeout("http://www.zjjv.com/", "罗成全编程网","red")

24 Function Highlight(strContent,keyword) '标记高亮关键字

25 Dim RegEx

26 Set RegEx=new RegExp

27 RegEx.IgnoreCase =True '不区分大小写

28 RegEx.Global=True

29 Dim ArrayKeyword,i

30 ArrayKeyword = Split(keyword," ")'用空格隔开的多关键字

31 For i=0 To Ubound(ArrayKeyword)

32 RegEx.Pattern="("&ArrayKeyword(i)&")"

33 strContent=RegEx.Replace(strContent,"<font color=red>$1</font>" )

34 Next

35 Set RegEx=Nothing

36 Highlight=strContent

37 End Function

38 response.write Highlight("罗成全编程网","http://www.zjjv.com/")

39 %>

【责编:cc】

0 0