asp.net搜索关键词高亮显示函数_.Net教程
教程Tag:暂无Tag,欢迎添加,赚取U币!
推荐:GMap谷歌地图实现代码EhtmlPUBLIC-//W3C//DTDXHTML1.0xhtml1-transitional.dtd htmlxmlns=1999/xhtml HEAD titleMyGoogelMap/title scriptsrc=http://maps.google.com/maps?file=apiamp;v=2amp;
在搜索关键词高亮中一般的方法都是采用替换的办法(Replace)这个方法有一个缺点就是不能区分大小写的问题。在网上找了找发现有人用正则表达式的方法来解决这个问题还真不错,效率也比较高,归纳如下,有用得到的朋友可以一试。//搜索关键词高亮显示函数
public static string HighLightKeyWord(string pain,string keyword)
{
//搜索关键词高亮函数By JN 2006.11.30
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;
还有:using System.Text.RegularExpressions;(小鱼加)
以上代码有问题:同一句中有多个关键字时出问题
试一下这个先
/// <summary>
/// 替换关键字为红色
/// </summary>
/// <param name="keycontent">原始内容</param>
/// <param name="k">关键字,支持多关键字</param>
/// <returns>String</returns>
/// <author>haver Guo</author>
public static string Highlightkeywords(string keycontent, string k)
{
string resultstr = keycontent;
if (k.Trim().IndexOf(’ ’) > 0)
{
string[] myArray = k.Split(’ ’);
for (int i = 0; i < myArray.Length; i++)
{
resultstr = resultstr.Replace(myArray[i].ToString(), "<font color=#FF0000>" + myArray[i].ToString() + "</font>");
}
return resultstr;
}
else
{
return resultstr.Replace(k, "<font color=#FF0000>" + k + "</font>");
}
}
经测,可用
分享:asp.net将Execl读到DataSet或DataTable中///summary ///从Excel读取数据 ////summary ///paramname=filePath路径/param ///returnsDataSet/returns publicDataSetImportFromExcel(stringfilePath) { DataSetds=newDataSet(); stringconnString=Provider=Microsoft.Jet.OLEDB.4.0;DataSource=+fil
相关.Net教程:
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP发送Email实例(可带附件)
- js实现广告漂浮效果的小例子
- asp.net Repeater 数据绑定的具体实现
- Asp.Net 无刷新文件上传并显示进度条的实现方法及思路
- Asp.net获取客户端IP常见代码存在的伪造IP问题探讨
- VS2010 水晶报表的使用方法
- ASP.NET中操作SQL数据库(连接字符串的配置及获取)
- asp.net页面传值测试实例代码
- DataGridView - DataGridViewCheckBoxCell的使用介绍
- asp.net中javascript的引用(直接引入和间接引入)
- 三层+存储过程实现分页示例代码
- 相关链接:
- 教程说明:
.Net教程-asp.net搜索关键词高亮显示函数。