ASP.NET 搜索关键字标记为红色_移动通信

ASP.NET 搜索关键字标记为红色_移动通信_02


/// <summary>
/// 搜索关键字标记为红色
/// </summary>
/// <param name="strWords">标题或内容(中国移动通信集团重庆有限公司渝北广场移动通信营业厅)</param>
/// <param name="strRepVal">搜索关键字(中国移动通信)</param>
/// <returns>
/// 处理结果:
/// <span class="focus-char"></span>
/// <span class="focus-char"></span>
/// <span class="focus-char"></span>
/// <span class="focus-char"></span>
/// <span class="focus-char"></span>
/// <span class="focus-char"></span>
/// 集团重庆有限公司渝北广场
/// <span class="focus-char"></span>
/// <span class="focus-char"></span>
/// <span class="focus-char"></span>
/// <span class="focus-char"></span>
/// 营业厅
/// </returns>
/// 加入CSS样式 .focus-char{color:#f98d00;}
public static string RepWordsFocus(object strWords, string strRepVal)
{
if (strWords != null && !string.IsNullOrEmpty(strWords.ToString()))
{
char[] strSplitWords = strRepVal.ToCharArray().Distinct().ToArray();
foreach (char item in strSplitWords)
{
strWords = strWords.ToString().Replace(item.ToString(), ("<span class=\"focus-char\">" + item.ToString() + "</span>"));
}
return strWords.ToString();
}
else
{ return ""; }
}
<%# FilterHelper.RepWordsFocus("标题内容文字","搜索关键字") %>
<%# FilterHelper.RepWordsFocus("中国移动通信集团重庆有限公司渝北广场移动通信营业厅","中国移动通信") %>  
处理后标红部分:(中国移动通信集团)重庆有限公司渝北广场(移动通信)营业厅

<%# FilterHelper.RepWordsFocus("中国移动通信集团,我是中国的500强!世界的500强!厉害了我的国。","中国移动通信") %>
处理后标红部分:(中国移动通信)集团,我是(中国)的500强!世界的500强!厉害了我的(国)。