易截截图软件、单文件、免安装、纯绿色、仅160KB

搜索结果高亮显示(不改变html标签)

一、问题的产生
  搜索结果高亮显示,在新闻标题,来源之类的地方好做,只需要用str.Replace(keyword,"<font style=\"color:red;\"" + keyword +"</font>");这样的方法就可实现。
  问题在于,在新闻内容里做搜索。其中html标签里可能含有关键字,用上面这种方法,将会替换掉html标签的部分内容,导致新闻内容不能正常显示。
  例如:新闻内容里的图片<img alt="" src="Upload\1.jpg" />,搜索时使用的关键字为oa,则会将新闻内容中这张图片替换为<img alt="" src="Upl<font style="color:red;">oa</font>d\1.jpg" />,这张图片就显示不出来了。
二、实现原理
首先,将新闻内容里的所有html标签读出来,保存起来;
其次,将所有html标签替换为一般不可能出现的字符,如[[1]],[[2]]......[[N]]]等;(搜索的关键字一般不会是[[N]]吧,新闻内容里也一般不会出现这样的字符)
再次,将搜索结果替换为高亮显示状态;
最后,将html标签还原。
三、实现代码
以下代码是网上搜集的,来源不详,在此对作者表示感谢。
        public static string Reg(string input, string replace)
        {
            //设置高亮样式
            string replaceformat = "<span style=\"font-size:14px; font-weight:bold; color:#f00; background-color:#ff0\">{0}</span>";
            System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(String.Format("{0}", replace), System.Text.RegularExpressions.RegexOptions.Multiline);
            return reg.Replace(input, string.Format(replaceformat, replace));
        }
        /// <summary>
        /// 设置各个html部分为自定义标号
        /// </summary>
        /// <pa


相关文档:

单引号,双引号,javascript,HTML,转义字符

在一个网页中的按钮,写onclick事件的处理代码,不小心写成如下:
<input value="Test" type="button" onclick="alert(""OK"");" />
IE提示出错后,再漫不经心地改为:
<input value="Test" type="button" onclick="alert(\"OK\");" />
结果还是出错。
这时,我就想不通了,虽然我知道最直接的解决方法 ......

HTML,XML,UML 简介

HTML,XML,UML 简介
 
HTML (HyperText Mark-up Language)超文本标记语言  是WWW的描述语言。设计HTML语言的目的是为了能把存放在一台电脑中的文本或图形与另一台电脑中的文本或图形方便地联系在一起,形成有机的整体,人们不用考虑具体信息是在当前电脑上还是在网络的其它电脑上。HTML文本是由HTML命令组成的 ......

HTML一种鼠标移动列变色效果

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title></title> ......

制作主流邮箱能正常显示的HTML邮件的技巧

几乎每个会员制网站都需要通过后台发送邮件来与会员进行沟通,如注册确认、营销推广。这些由站方发给会员的信件,往往纯文本格式已不能满足界面和交互的要求,这时候我们就需要发送HTML页面。由于HTML邮件不是独立的HOST在本站的页面,是寄人篱下的。所以编写HTML邮件与编写HTML页面有很大的不同。因为,各面向网民的主流邮 ......

HTML DOM与XML DOM之间的区别与联系

像在座的各位一样,由于自身的兴趣,我对AJAX编程方面的研究是持续不断的。随着该领域的深入,我越来越发觉所谓的浏览器DOM,即HTML DOM,是一个非常值得关注的点。这观点在与同行们交换意见的时候也曾谈到过,就是,我们仍然缺乏具有深度的、规范的DOM Level 1辅助读物,网络上搜索也比较少见。而我们真实的想法在于,我们 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号