C#中搜索关键词高亮显示函数
2008-10-07 10:16
399 查看
在搜索关键词高亮中一般的方法都是采用替换的办法(Replace)这个方法有一个缺点就是不能区分大小写的问题。在网上找了找发现有人用正则表达式的方法来解决这个问题还真不错,效率也比较高,归纳如下,有用得到的朋友可以一试。
//搜索关键词高亮显示函数
public static string HighLightKeyWord(string pain,string keyword)
{
//搜索关键词高亮函数
System.Text.RegularExpressions.MatchCollection m = Regex.Matches(pain, keyword, RegexOptions.IgnoreCase);
//忽略大小写搜索字符串中的关键字
for (int j = 0; j < m.Count; j++)//循环在匹配的子串前后插东东
{
//j×31为插入html标签使pain字符串增加的长度:
pain = pain.Insert((m[j].Index + keyword.Length + j * 31), "</font>");//关键字后插入html标签
pain = pain.Insert((m[j].Index + j * 31), "<font color=#ff0000>");//关键字前插入html标签
}
//搜索关键词高亮函数By JN 2006.11.30
return pain;
}
当然用之前引用先:using System.Web.UI.HtmlControls;
-----------------------------------------------------------------
//搜索关键词高亮显示函数
public static string HighLightKeyWord(string pain,string keyword)
{
//搜索关键词高亮函数
System.Text.RegularExpressions.MatchCollection m = Regex.Matches(pain, keyword, RegexOptions.IgnoreCase);
//忽略大小写搜索字符串中的关键字
for (int j = 0; j < m.Count; j++)//循环在匹配的子串前后插东东
{
//j×31为插入html标签使pain字符串增加的长度:
pain = pain.Insert((m[j].Index + keyword.Length + j * 31), "</font>");//关键字后插入html标签
pain = pain.Insert((m[j].Index + j * 31), "<font color=#ff0000>");//关键字前插入html标签
}
//搜索关键词高亮函数By JN 2006.11.30
return pain;
}
当然用之前引用先:using System.Web.UI.HtmlControls;
-----------------------------------------------------------------
// 不区分大小写高亮的。 static string HighlightKeyword(string str, string keyword) { int index; int startIndex = 0; string highlightBegin = "<span style='background-color:#FFEE62'>"; string highlightEnd = "</span>"; int length = highlightBegin.Length + keyword.Length; int lengthHighlight = length + highlightEnd.Length; while ((index = str.IndexOf(keyword, startIndex, StringComparison.OrdinalIgnoreCase)) > -1) { str = str.Insert(index, highlightBegin).Insert(index + length, highlightEnd); startIndex = index + lengthHighlight; } return str; }
相关文章推荐
- C#中搜索关键词高亮显示函数
- asp.net搜索关键词高亮显示函数
- C#中搜索关键词高亮显示
- 搜索关键词高亮显示
- Linux下搜索指定目录下文件中特定字符串并高亮显示匹配关键词
- asp实现关键词不区分大小写搜索并高亮显示
- 搜索结果高亮显示函数
- asp实现关键词不区分大小写搜索并高亮显示
- asp实现关键词不区分大小写搜索并高亮显示
- 搜索关键词高亮显示
- asp实现关键词不区分大小写搜索并高亮显示
- 搜索学习入门--使用LuceneHighlighter高亮显示Lucene检索结果的关键词
- C# 自定义Label实现 指定字符串(关键词)高亮显示(字体、颜色)
- asp实现关键词不区分大小写搜索并高亮显示
- 基于Vue实现关键词实时搜索高亮显示关键词
- 搜索关键词高亮显示
- php搜索结果关键词高亮显示
- WordPress搜索结果中增加关键词高亮显示代码
- 高亮关键词显示函数及取消高亮关键词显示函数
- react中实现搜索结果中关键词高亮显示