`
amcucn
  • 浏览: 295110 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

使用Java匹配过滤<script>标签,不区分大小写

阅读更多

为了过滤一些内容当中包含有JS代码,因此加了对字符的过滤设置。刚开始并没有想到会有大小写的问题。

如果用户直接输入<script>JS代码</script>这样是可以进行过滤,但没考虑到如果用户输入的是大写标签或即有大写也有小小写的标签。

最开始想到一种比较笨的方法就是一一列举,然后一一匹配。着实太笨!

 

翻看API,发现原来JAVA已自带有这方面的方法。汗颜!!!

代码如下:

 /**
     * 对字符串当中的JS代码 进行过滤,全部替换为"非法字符"
     *
     * @param str 要过滤的字符串
     * @return 过滤后的字符串
     */
    public static String doFilter(String str) {
       str = Pattern.compile("<script.*?>.*?</script>", Pattern.CASE_INSENSITIVE).matcher(str).replaceAll("****");
        return str;
    }
 
0
0
分享到:
评论
2 楼 searchnomore 2013-11-19  
不管用
1 楼 iwlk 2013-08-15  
String str = "11<script>\r\nalert(123)\r\n</script>22";

以上代码就不管用了~  

相关推荐

    解决Maven资源过滤的pom配置文件

    `&lt;include&gt;`标签可以重复使用多次来指定多个匹配规则。这里的规则是所有`.properties`和`.xml`文件都将被包含。 4. **`&lt;filtering&gt;`**:控制是否对资源文件进行过滤。设置为`false`表示关闭过滤功能。 #### 实际...

    List<Map>转化为List工具类

    一般使用springjdbc、hibernate的sql查询,库获取到的数据都是List&lt;Map&lt;String, Object&gt;&gt;结果集,如果我们要转化为JavaBean,则需要做一系列的map.get(),然后obj.set()。 此工程中就是解决List&lt;Map&lt;String, Object&gt;...

    java百度编辑器提交过滤标签方法

    - 使用`Pattern.compile(正则表达式)`方法创建模式对象,并设置`Pattern.CASE_INSENSITIVE`标志使其不区分大小写。 3. **创建Matcher对象:** - 通过`Pattern`对象的`matcher(String)`方法创建与输入字符串相匹配...

    比较两个string(不区分大小写)

    本文将详细介绍如何在不同的编程语言中进行不区分大小写的字符串比较。 首先,让我们看看在一些主要编程语言中的实现方式: 1. **Java**: 在Java中,`String`类提供了`equalsIgnoreCase()`方法,可以进行大小写...

    去除html代码里面的script正则方法

    i)`是正则表达式的标志,表示接下来的匹配应该是不区分大小写的。`&lt;SCRIPT&gt;`和`&lt;/SCRIPT&gt;`分别代表`&lt;script&gt;`标签的开始和结束。`[\\s\\S]*?`这部分匹配任何数量的任意字符(包括换行符),`?`表示非贪婪匹配,即尽...

    Java课程设计(代码+清单)

    ReadTestquestion&lt;br&gt;7.5. 课程设计作业&lt;br&gt;第8章 日历记事本&lt;br&gt;8.1. 设计内容&lt;br&gt;8.2. 设计要求&lt;br&gt;8.3. 总体设计&lt;br&gt;8.4. 具体设计&lt;br&gt;8.4.1. 运行效果与程序发布&lt;br&gt;8.4.2. 主类CalendarPad&lt;br&gt;8.4.3. 记事本...

    java反编译工具jad 1.5.8g(可以反编译jdk1.5,1.6)

    If you want to specify&lt;br&gt;your own output file name use the output redirection:&lt;br&gt;&lt;br&gt; jad -p example1.class &gt; myexm1.java&lt;br&gt;&lt;br&gt;Option -d allows you to specify another directory for output files,...

    java实现动态标签页的4种方法

    &lt;li&gt;&lt;a href="#tabs-1"&gt;标签页1&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="#tabs-2"&gt;标签页2&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt; &lt;div id="tabs-1"&gt;内容1&lt;/div&gt; &lt;div id="tabs-2"&gt;内容2&lt;/div&gt; &lt;/div&gt; &lt;script&gt; $( function() { $( "#tabs" ).tabs()...

    xss跨站脚本攻击汇总

    16. 解决限制字符:&lt;script&gt;z='document.'&lt;/script&gt;&lt;script&gt;z=z+'write("'&lt;/script&gt;&lt;script&gt;z=z+'&lt;script'&lt;/script&gt;&lt;script&gt;z=z+' src=ht'&lt;/script&gt;&lt;script&gt;z=z+'tp://ww'&lt;/script&gt;&lt;script&gt;z=z+'w.shell'&lt;/script&gt;...

    Java实现的分页工具类

    本篇文章将详细探讨如何使用Java实现一个分页工具类,以及在实际应用中如何运用这个工具。 首先,分页的基本概念是通过指定每页显示的数据量(每页记录数,即pageSize)和当前页数(pageNumber),从数据库中获取...

    北大青鸟第二学期4.0 S2所有资料 四

    &lt;br&gt;北大青鸟第二学期4.0 S2所有资料 四&lt;br&gt;&lt;br&gt;我已经把第二学期所有的课件打包在一起了,一共有5部分,这是第四部分&lt;br&gt;&lt;br&gt;大家下载时要记得评分,这样你们就不要资源分了&lt;br&gt;&lt;br&gt;java WEB &lt;br&gt;&lt;br&gt;COT&lt;br&gt;&lt;br&gt;sql...

    基于JSP新闻发布系统

    其它小型社区&lt;br&gt;&lt;br&gt;软件产品介质:&lt;br&gt;1.xwfb.rar &lt;br&gt;2.xwfbclass.rar &lt;br&gt;3.xwfblib.rar&lt;br&gt;4.Web版新闻发布管理系统使用手册.doc &lt;br&gt;5.web.xml server.xml &lt;br&gt;&lt;br&gt;需要者请联系:&lt;br&gt;&lt;br&gt;e_mail:fzlotuscn@...

    北大青鸟第一学期4.0 S1所有资料一

    我已经把第一学期所有的课件打包在一起了,一共有5部分,这是第一部分&lt;br&gt;&lt;br&gt;大家载时要记得评分,这样你们就不要资源分了&lt;br&gt;&lt;br&gt;C语言&lt;br&gt;&lt;br&gt;HTML && JavaScript 电子档课件ppt.rar&lt;br&gt;&lt;br&gt;java&&OOP &lt;br&gt;&lt;br&gt;SQL...

    java信息管理系统

    &lt;br&gt;3,系统采用Struts标签制,避免Jsp页面出java代码。 &lt;br&gt;3,完全生成前台静态页面,大大提高网民浏览前台页面的速度,降低服务器的资源开销。 &lt;br&gt;4,集成最新编辑器(eWebEditor V4.60),实现所见即所得的效果 &lt;br&gt;...

    基于JSP的在线考试系统

    &lt;br&gt;&lt;br&gt;本系统是Web模式的在线考试管理系统&lt;br&gt;&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;&lt;br&gt;后台数据库:MS-Access&lt;br&gt;&lt;br&gt;系统主要完成的功能如下:&lt;br&gt;&lt;br&gt;.基本信息管理 考生...

    基于JSP的办公自动化系统

    &lt;br&gt;&lt;br&gt;本系统是Web模式的办公自动化系统&lt;br&gt;&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;后台数据库:MS-Access&lt;br&gt;&lt;br&gt;系统主要功能简介:&lt;br&gt;&lt;br&gt;.信息中心 &lt;br&gt;&lt;br&gt;.内部电子邮件&lt;br&gt;...

    Java基础教程教学ppt

    Java基础教程 教学ppt.&lt;br&gt;苏州职业大学计算机与电子工程系曾海 &lt;br&gt;&lt;br&gt;内容如下:&lt;br&gt;&lt;br&gt;Java基础教程第十三单元《文件处理》ppt及习题 &lt;br&gt;Java基础教程第十二单元《意外处理》ppt+习题+作业 &lt;br&gt;Java基础教程第...

    基于JSP的实验室教学管理系统

    &lt;br&gt;&lt;br&gt;本系统是WEB模式的实验室教学管理系统&lt;br&gt;运行环境:Tomact+JDK&lt;br&gt;编程模式:JSP+JavaBean+JavaServlet&lt;br&gt;后台数据库:MS-Access\MySql&lt;br&gt;&lt;br&gt;系统特点:&lt;br&gt;&lt;br&gt;1.基于免费环境开发 jdk+Tomcat+Ms-Access...

    java正则表达式过滤html标签

    regxpForHtml是一个正则表达式,用于匹配所有以"&lt;"开头以"&gt;"结尾的标签。regxpForImgTag是一个正则表达式,用于匹配IMG标签。regxpForImaTagSrcAttrib是一个正则表达式,用于匹配IMG标签的SRC属性。 ...

Global site tag (gtag.js) - Google Analytics