`
amcucn
  • 浏览: 294502 次
  • 性别: 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)`方法创建与输入字符串相匹配...

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

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

    java代码-正则去除HTML代码中的SCRIPT标签

    这个场景中,我们关注的是如何使用Java和正则表达式来移除HTML代码中的`&lt;script&gt;`标签,因为这些标签通常包含JavaScript代码,可能对页面的呈现或安全有特殊影响。下面我们将深入探讨这个话题。 首先,`&lt;script&gt;`...

    elasticsearch java操作的api实例

    Elasticsearch是一个分布式、RESTful风格的搜索和数据分析引擎,被广泛用于实时的索引和搜索,尤其在大数据分析和实时数据检索方面表现卓越。它使用Java开发,并且提供了丰富的Java API供开发者进行操作。本实例主要...

    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,...

    孙卫琴《Tomcat与Java Web开发技术详解》培训讲义.rar

    孙卫琴《Tomcat与Java Web开发技术详解》培训讲义.rar&lt;br&gt;01__JavaWeb应用简介.pdf&lt;br&gt;02_Servlet技术.pdf&lt;br&gt;03_JSP技术.pdf&lt;br&gt;04_使用HTTP会话(Session).pdf&lt;br&gt;05_使用JavaBean.pdf&lt;br&gt;06_使用Servlet过滤器....

    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()...

    mysql5.1中文手册

    识别符大小写敏感性&lt;br&gt;9.3. 用户变量&lt;br&gt;9.4. 系统变量&lt;br&gt;9.4.1. 结构式系统变量&lt;br&gt;9.5. 注释语法&lt;br&gt;9.6. MySQL中保留字的处理&lt;br&gt;10. 字符集支持&lt;br&gt;10.1. 常规字符集和校对&lt;br&gt;10.2. MySQL中的字符集和校对...

    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;...

    北大青鸟第二学期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...

    Java2+类库参考手册-pdf

    译 者 序&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt; Java是Sun公司推出的新型面向对象程序设计语言。它将面向对象、平台无关性、稳固性、安全性、多线程等诸多特性集于一身,为用户提供了一个良好的程序设计环境。&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt; Java提供...

    《嵌入式系统开发圣经(第二版)》电子版

    信息家电软件的大趋势 239&lt;br&gt;4-1 多采多姿的Java世界 240&lt;br&gt;4-1-1 Java的概念 240&lt;br&gt;4-1-2 Java世界 243&lt;br&gt;4-1-3 企业版J2EE 243&lt;br&gt;4-1-4 标准版J2SE 245&lt;br&gt;4-1-5 袖珍版J2ME 246&lt;br&gt;4-1-6 Java Card 248&lt;br&gt;4...

    基于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@...

    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;编程模式: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;...

    胡玉玺JSP新闻系统

    文件夹说明 &lt;br&gt;&lt;br&gt; ←admin[后台管理]&lt;br&gt;&lt;br&gt; ←images[站内图片]&lt;br&gt;&lt;br&gt; ←META-INF&lt;br&gt;javaif&lt;br&gt; ←uploadfiles[上传图片]&lt;br&gt;&lt;br&gt; ←util_file[CSS]&lt;br&gt;&lt;br&gt; ←WEB-INF[JAVABEAN和JAR包所在文件夹]&lt;br&gt;&lt;br&gt;...

    java过滤html代码

    在这个例子中,`removeHtmlTags` 方法接收一个包含HTML的字符串作为参数,然后使用正则表达式 `&lt;[^&gt;]+&gt;` 来匹配所有的HTML标签。这个正则表达式的含义是:开始符号 `&lt;` 后面跟着任意数量的非 `&gt;` 字符,直到遇到 `&gt;`...

Global site tag (gtag.js) - Google Analytics