Highlight patterns within strings


复制代码 代码如下:

'Replaces pattern with highlighted replacement (using style) and preserves case
Public Function highlight(strText, strFind)
Dim objRegExp, i, strHighlight

'Split the search terms into an array
Dim arrFind
arrFind = Split(strFind, " ")

'Initialize the regular expression object to perfom the search
Dim oMatches, sMatch
Set oregExp = New RegExp

oregExp.Global = True 'Returns all matches to the search term
oregExp.IgnoreCase = True 'Case insensitive

'Loop through the array of search terms to find matches
For i = 0 to UBound(arrFind)
oregExp.Pattern = arrFind(i) 'Sets the search pattern string
Set oMatches = oregExp.Execute(strText) '// performs the search
for each match in oMatches
'Build the code to be used to highlight results
strHighlight = "<span class=""highlight"">" & match.value & "</span>"
next
'Replace matches from the search with the above code
strText = oregExp.Replace(strText, strHighlight)
Next

highlight = strText

Set objRegExp = Nothing
End Function


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3