今天遇到这种问题,单纯的使用replace函数不行,他会改变原有的字符串的大小写,在网上找到相关的代码,自己备份下
普通的替换函数
复制代码 代码如下: public function HighLight(S,F) dim tL,tM,tR,k tL="" tM="" tR=S k=instr(1,tR,F,1) do while k>0 tL=tL & left(tR,k-1) tM=mid(tR,k,len(F)) tL=tL & "<span style='color:red'>" & tM & "</span>" tR=right(tR,Len(tR)-len(F)-k+1) k=instr(1,tR,F,1) loop HighLight=tL & tR end function tS="abcaBcabCaBCabcaBCa" tF="bc" response.Write(tS) response.Write("<br/>") response.Write(HighLight(tS,tF))
正则表达式
复制代码 代码如下: Function HighLight(S,F) Dim regEx Set regEx = New RegExp regEx.IgnoreCase = True regEx.Global = True regEx.Pattern = "(" & F & ")" HighLight = regEx.Replace(S,"<span style='color:red'>$1</span>") End Function Response.write HighLight("abcaBcabCaBCabcaBCa","bc")
|