问题是这样的:
首先说明呢,是关于关键字处理,替换方法的。
关键字是输入到数据库的,有个列表
使用select * from keywords where fatherID=1 就可以检索出来。
然后就是关键字匹配的问题了。详细描述:
在一个文本中,其实是输入的一段新闻,如果出现数据库的关键字,就进行匹配,把这个关键字标红。
如 数据库中有空气,冷空气,冷,这三个关键字。
文本中有这样一段话, 今天天气很冷,有冷空气。
想要的结果是 今天天气很,有冷空气。说明:当文中出现“冷空气”三个字的时候,他被拆分成“冷”和“空气”两个连接,其中“冷”点进去实际上是冷空气这个关键字的相关内容点击“空气”进入的是空气的关键字相关内容。这样子是不对的,应该只匹配冷空气这个关键字。
就是有空气和冷空气这个关键字时,文本中有冷空气的话,只匹配冷空气这个关键字。当然,如果我那点写的不好的话,可以和我沟通,我QQ646661750.
给个思路就可以了。
大致要用到 在一个字符串中 查找一个子字符串,字符串排序等等。

解决方案 »

  1.   

    直接用正则替换就可以啊,正则查找时缺省就是找最大匹配的string s = "文本中有这样一段话, 今天天气很冷,有冷空气。";
    s = Regex.Replace(s, @"(空气|冷空气|冷)", "<font color='red'>$&</font>");
      

  2.   

    http://topic.csdn.net/u/20091028/13/df7cd47d-0f30-4361-9695-a6aa547b8d7a.html
      

  3.   

    另外我再补充一点。
    就是关键字的链接格式是
    <a href="keywords.aspx?id=123">关键字</a>
    其中123代表的是 关键字 所对应的ID号码。
    keywords.aspx页面会自动处理的。
      

  4.   

    http://blog.csdn.net/xianfajushi/archive/2009/11/11/4787050.aspx
      

  5.   

    http://topic.csdn.net/u/20090813/20/c9368609-0e38-4864-8a05-c63da51269fc.html2楼