简单一点在数据库里用replace函数替换一下
replace(coltitle,@keywork,'<font color=''red'''+@keywork+'</font>')

解决方案 »

  1.   

    有前端和服务器端两种做法.
    前端做法也就是脚本做法:
    需要你将获取完的keyword返回到显示列表的页面,在页面上输出.
    比如要输出的是keywords,那么显示页面的脚本代码应该这么写:
            function HLight(Keyword)
                { var TextRange;
                    var Found=false;
                    var Count = 0;
                    TextRange = document.body.createTextRange();
                    Found = TextRange.findText(Keyword);
                    if (Found){ Count++; }
                    while (Found && Count > 0)
                    { TextRange.pasteHTML('<span style="background:yellow">' + Keyword + '</span>');
                       if(Count==1) {TextRange.scrollIntoView(); }
                        Found = TextRange.findText(Keyword);
                       if (!Found){ Count = 0; }else{Count++;}
                   }
                }
        window.onload=function(){HLight('<%=keywords%>');}
    这种方法的优点在于可以在前台控制关键字的颜色大小,缺点就是特大容量的数据会导致页面加载变慢,要考虑浏览器兼容.服务器端的就如CutBug 所说,不过应当是在显示的时候替换一下;
    <%title=replace(title,keywords,'<font color=''red'''+keywords+'</font>')%>
    优点是前台速度快点无视浏览器,但是需要改jsp甚至类.可移植性不强
      

  2.   

    不好意思,服务器端的是抄袭的CutBug ,不是jsp写法⊥_⊥.
    以下正确
    title=title.replaceAll(keywords, "<span style='background:yellow'>"+keywords+"</span >");