举例:
(原文)我就看你不顺眼,我日你.你这贱人.
(屏蔽)我就看你不顺眼,我*你.你这*人.---(请注意言谈举止!!!)本人是大四的学生,大后天就要交毕业设计了。但辅导老师叫我在原来设计的JSP论坛里再添加此功能...大家帮帮忙,给个提示也好.感激不尽

解决方案 »

  1.   

    jsp过滤  对表单提交的东西 进行过滤
      

  2.   

    ("我就看你不顺眼,我日你.你这贱人".replaceAll("日", "太阳")).replaceAll("贱", "jian");
    结果是"我就看你不顺眼,我太阳你.你这jian人"当然编程不可能这么做,因为你不能一个一个去替换你要过滤的字,而且可能"日你"是脏话,但是"后羿射日"不能替换成"后羿射太阳".正确的做法我不知道,但是最直接的方法应该是使用正则表达式,你要定义自己的脏话字典.还是去下载一个开源论坛,然后看看人家是怎么做的比较好.
      

  3.   

    那只能在提交的里面替换了replaceAll,把不想让出现的词都写出来替换成*
    String.replaceAll("日","")
    String.replaceAll("贱","")
    以前在移动网站上发短信,就不能写"妈"字,要是能根据上下意思来判断的话就不知道怎么做了
      

  4.   

    谢谢大家的帮助,请问下载开源论坛具体是指什么?我是个初学JSP的菜菜,大家见笑。不好意思。
      

  5.   

    //bs你开这么多帖
    String regEx = "[^操贱]*(贱[人B]|操[你他她])[^操贱]*";
    String str="我就看你不顺眼,我操你.玩游戏操作都不好,你这贱人.";
    Pattern p=Pattern.compile(regEx);
    Matcher m=p.matcher(str);
    while (m.find()) {
    for (int i = 0; i < m.groupCount(); i++)
    str = str.replaceAll(m.group(i+1), "*" + m.group(i+1).replaceAll("[操贱]", ""));
    }
    System.out.println(str);
      

  6.   

    上面str = str.replaceAll(m.group(i+1), "*" + m.group(i+1).replaceAll("[操贱]", ""));换成str = str.replace(m.group(i+1), m.group(i+1).replaceAll("[操贱]", "*"));