「java过滤字符」java过滤非法字符

博主:adminadmin 2022-11-26 19:08:08 161

今天给各位分享java过滤字符的知识,其中也会对java过滤非法字符进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

在java中,很多用户都希望在输入信息时就过滤那些不想输入的字符,可以利用()来实现?

可以用正则表达式过滤。

// 过滤特殊字符 public staticString StringFilter(String str) throws PatternSyntaxException {

// 只允许字母和数字 // String regEx ="[^a-zA-Z0-9]";

// 清除掉所有特殊字符

String regEx="[`~!@#$%^*()+=|{}':;',\\[\\]./?~!@#¥%……*()——+|{}【】‘;:”“’。,、?]";

Pattern p = Pattern.compile(regEx);

Matcher m = p.matcher(str);

return m.replaceAll("").trim();

}

jsp\java 如何编写过滤器过滤特殊字符?

package com.jingdu.common;\x0d\x0aimport java.io.IOException;\x0d\x0aimport java.io.PrintWriter;\x0d\x0aimport javax.servlet.Filter;\x0d\x0aimport javax.servlet.FilterChain;\x0d\x0aimport javax.servlet.FilterConfig;\x0d\x0aimport javax.servlet.ServletException;\x0d\x0aimport javax.servlet.ServletRequest;\x0d\x0aimport javax.servlet.ServletResponse;\x0d\x0aimport javax.servlet.http.HttpServletRequest;\x0d\x0aimport javax.servlet.http.HttpServletResponse;\x0d\x0a\x0d\x0apublic class IllegalCharacterFilter implements Filter {\x0d\x0a private String[] characterParams = null;\x0d\x0a private boolean OK=true;\x0d\x0a \x0d\x0a public void init(FilterConfig config) throws ServletException {\x0d\x0a \x0d\x0a// if(config.getInitParameter("characterParams").length()

回答于 2022-11-16

java 字符串过滤

package test;

import java.util.HashMap;

/**

* maxLength-需要过滤最长字符串的长度

* filterStrsstring,string-需要过滤字符串的集合,key为需要过滤字符串,value为过滤成的字符串如"*"

* @author Administrator

*

*/

public class Test{

    private int maxLength;

    private HashMapString,String filterStrs=new HashMapString,String();

/**

* 初始化需要过滤掉*的数量

*/

private String initStr(int n){

        StringBuffer sb=new StringBuffer();

          for(int i=0;in;i++){

            sb.append('*');

        }

        return sb.toString();

}

/**

* str-被过滤得字符串

* s-需要过滤得字符串

* 获得剩下未过滤的字符串

*/

private String getNextStr(String str,int start,int slength){

    if(start==0){

        str=str.substring(slength);

    }else if(start+slengthstr.length()){

        str=str.substring(start+slength);

    }

    return str;

}

/**

* str-被过滤得字符串

* s-需要过滤得字符串

* 获得过滤后的字符串

*/

private StringBuffer getFilterStr(StringBuffer sb,String str,int start,String s){

      if(start!=0){

        sb.append(str.substring(0,start));

    }

    sb.append(filterStrs.get(s));

    return sb;

}

/**

* str-被过滤的字符串

* 过滤,并组合过滤后的字符串

*/

public String filter(String str) {

    StringBuffer resultStr=new StringBuffer();

    for(int start=0;startstr.length();start++){

        for(int end=start+1;end=str.length()end=start+maxLength;end++){

            String s=str.substring(start, end);

            int slength=s.length();

            if(filterStrs.containsKey(s)){

                  resultStr=getFilterStr(resultStr,str,start,s);

                str=getNextStr(str,start,slength);

                start=0;

                end=start;

            }

        }

    }

    resultStr.append(str);

    return resultStr.toString();

}

public void put(String key) {

    int keyLength=key.length();

    filterStrs.put(key, initStr(keyLength));

    if(keyLengththis.maxLength)

        maxLength=keyLength;

}

public static void main(String[] agrs){

    Test t=new Test();

    t.put("TMD");

    t.put("TNND");

    t.put("NND");

    System.out.println(t.filter("TMD,TNND..TMDTMDTMDTMD.tTNND TMDTNNDTNNDTNND"));

}

}

java怎样过滤危险字符

就WEB应用来说,所谓危险的字符一般就是两种

一个是SQL注入,一个是HTML语法注入

SQL注入主流的框架都可以搞定,JDBC永远都使用preparedstatement就可以防止所有的sql注入,关键是用户输入都要通过占位符往里放,就自动的替换掉了特殊字符了。hibernate等orm框架都会搞定这个问题

HTML语法注入是指用户输入的html代码回显出来,这样如果不转义就可以破坏页面的结构或者注入脚本。所以现在的网站都不允许用户直接输入html代码了,现在都是一些UBB标签来完成一些效果。HTML主要最好的解决办法是在回显的时候进行转义,所有的MVC框架或者展示层框架都有HTML转义的支持,包括struts,spring,volicty等,注意观察他们用于显示的标签

在Java中如何把字符串的不想的字符给去掉?

String str="009012005001";//你的字符串

String [] strs=str.split("0");//将不想要的字符过滤掉,生成字符串数组形式的

String newstr="";

for(int i=0;istrs.length;i++)

{

if(!strs[i].equals("")){//如果截取的字符串不为空,则赋予新的字符串,加上.使之成为IP格式

newstr+=strs[i]+".";

}

}

newstr=newstr.substring(0, newstr.length()-1);//将最后一个点去掉

System.out.println(newstr);//输出

有不懂的问我 QQ:307525445

java过滤字符的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java过滤非法字符、java过滤字符的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-26,除非注明,否则均为首码项目网原创文章,转载请注明出处。