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 |