JAVA-字符串过滤类

24 篇文章 0 订阅

package cn.com.hbivt.util;
/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2005</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class StringUtils {
       //过滤通过页面表单提交的字符
       private static String[][] FilterChars={{"<","&lt;"},{">","&gt;"},{" ","&nbsp;"},{"/"","&quot;"},{"&","&amp;"},
                                       {"/","&#47;"},{"//","&#92;"},{"/n","<br>"}};
       //过滤通过javascript脚本处理并提交的字符
       private static String[][] FilterScriptChars={{"/n","/'+/'//n/'+/'"},
                                                           {"/r"," "},{""},
                                                                   {"/'","/'+/'///'/'+/'"}};

       /**
        * 用特殊的字符连接字符串
        * @param strings 要连接的字符串数组
        * @param spilit_sign 连接字符
        * @return 连接字符串
        */
       public static String stringConnect(String[] strings,String spilit_sign){
         String str="";
         for(int i=0;i<strings.length;i++){
           str+=strings[i]+spilit_sign;
         }
         return str;
       }

       /**
        * 过滤字符串里的的特殊字符
        * @param str 要过滤的字符串
        * @return 过滤后的字符串
        */
       public static String stringFilter(String str){
         String[] str_arr=stringSpilit(str,"");
         for(int i=0;i<str_arr.length;i++){
           for(int j=0;j<FilterChars.length;j++){
             if(FilterChars[j][0].equals(str_arr[i]))
               str_arr[i]=FilterChars[j][1];
           }
         }
         return (stringConnect(str_arr,"")).trim();
       }

       /**
* 过滤脚本中的特殊字符(包括回车符(/n)和换行符(/r))
* @param str 要进行过滤的字符串
* @return 过滤后的字符串
* 2004-12-21 闫
*/
public static String stringFilterScriptChar(String str){
 String[] str_arr=stringSpilit(str,"");
 for(int i=0;i<str_arr.length;i++){
   for (int j = 0; j < FilterScriptChars.length; j++) {
     if (FilterScriptChars[j][0].equals(str_arr[i]))
       str_arr[i] = FilterScriptChars[j][1];
   }
 }
 return(stringConnect(str_arr,"")).trim();
}


       /**
        * 分割字符串
        * @param str 要分割的字符串
        * @param spilit_sign 字符串的分割标志
        * @return 分割后得到的字符串数组
        */
       public static String[] stringSpilit(String str,String spilit_sign){
         String[] spilit_string=str.split(spilit_sign);
         if(spilit_string[0].equals(""))
         {
           String[] new_string=new String[spilit_string.length-1];
           for(int i=1;i<spilit_string.length;i++)
             new_string[i-1]=spilit_string[i];
             return new_string;
         }
         else
           return spilit_string;
       }

       /**
        * 字符串字符集转换
        * @param str 要转换的字符串
        * @return 转换过的字符串
        */
       public static String stringTransCharset(String str){
         String new_str=null;
         try{
             new_str=new String(str.getBytes("iso-8859-1"),"GBK");
         }
         catch(Exception e){
           e.printStackTrace();
         }
         return new_str;
       }

       /**
        * 测试字符串处理类
        * @param args 控制台输入参数
        */
       public static void main(String[] args){

         //测试字符串过滤
         String t_str1="<h1>StringDispose字符串  处理/n/r/'/"</h1>";
         System.out.println("过滤前:"+t_str1);
         System.out.println("过滤后:"+StringUtils.stringFilter(t_str1));
         //测试合并字符串
         String[] t_str_arr1={"PG_1","PG_2","PG_3"};
         String t_str2=StringUtils.stringConnect(t_str_arr1,",");
         System.out.println(t_str2);
         //测试拆分字符串
         String[] t_str_arr2=StringUtils.stringSpilit(t_str2,",");
         for(int i=0;i<t_str_arr2.length;i++){
           System.out.println(t_str_arr2[i]);
         }
       }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值