隨筆 - 11  文章 - 2  trackbacks - 0
          <2007年8月>
          2930311234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          常用鏈接

          留言簿(1)

          隨筆檔案

          相冊

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          [ 2007-7-27 16:28:00 | By: 葉尋飛 ]

          初學JSP時,寫了一些工具函數因為不太會用JAVA下的正則表達式也只能這么寫啦!

          發出來讓大家批評批評提點意見!有幾個函數不算是自己寫的希望愛挑剌的朋友嘴

          下留情!我是新手我怕誰,臉皮不行的人水平也上不去呀.嘻嘻..

          package mxzc.web.strctrl;
          public class StringCtrl
          {/********************************************
          public synchronized String HTMLcode(String TXTcode)   功能:文本替換
          public synchronized String Unhtmlcode(String str)   功能:(不完全)反文本

          替換
          public synchronized String Unhtmlcodea(String str)   功能:反文本替換
          public synchronized boolean emailcheck (String email)   功能:檢查一個字

          符串是否符合E-Mail
          public synchronized boolean isemailstr(String email)   功能:檢查一個字

          符串是否符合E-Mail
          public synchronized boolean isqqstr(String qq)    功能:檢查一個字符串是

          否符合QQ
          public synchronized boolean isnumstr(String num)   功能:檢查一個字符串

          是否為一數字串
          public synchronized String userstrlow(String user)   功能:替換用戶名中

          不合法的部分
          public synchronized boolean userstrchk(String user)   功能:檢查字符串是

          否符合用戶名法則
          public synchronized boolean istelstr(String tel)   功能:檢查字符串是否

          為TEL
          public synchronized boolean urlcheck(String url)   功能:檢查字符串是否

          為URL
          public synchronized String isotogbk(String iso)    功能:ISO9006-1碼轉換

          為GBK
          public synchronized String gbktoiso(String gbk)    功能:GBK碼轉換為

          ISO9006-1
          public synchronized String dostrcut(String oldstr,int length)  功能:按

          漢字長換行(英文按半個字長)
          public synchronized String inttodateshow(int datenum)   功能:將1900年至

          時間的秒數換為日期字符串
          public synchronized String nowdateshow()    功能:顯示當前日期
          public synchronized java.util.Date inttodate(int datenum)  功能:將秒數

          轉換為日期
          public synchronized int datetoint()     功能:將時間換為從1900年至今的秒


          public synchronized int datetoint(java.util.Date d)   功能:將時間換為從

          1900年至時間的秒數
          public synchronized String overlengthcut(String str,int length)  功能:

          截取前幾個字符,單位為漢字字長
          public synchronized String replace(String str,String suba,String subb)

          功能:字符串替換
          *********************************************/
          private static final String isostr="ISO8859-1";
          private static final String gbkstr="GBK";
          public StringCtrl()
          {
          }
          public synchronized boolean emailcheck (String email)
          {
          if(email==null)return false;
          if(email.length()<6)return false;
          if(email.indexOf("@")<2)return false;
          if(email.indexOf(".")<4)return false;
          if(email.endsWith(".")||email.endsWith("@"))return false;
          if(email.lastIndexOf("@")>email.lastIndexOf(".")-1)return false;
          if(email.lastIndexOf("@")!=email.indexOf("@"))return false;
          String[] lowstr={"\@#","\"","\n","&","\t","\r","<",">","/","\\","#"};
          for(int i=0;i<lowstr.length;i++)if(email.indexOf("lowstr")>0)return

          false;
          return true;
          }
          public synchronized boolean isemailstr(String email)
          {
          if(email==null)return false;
          if(email.indexOf("@")==-1||email.indexOf(".")==-1||email.length()<6)

          return false;
          return true;
          }
          public synchronized boolean isqqstr(String qq)
          {
          if(qq==null)return false;
          if(qq.length()>12)return false;
          if(qq.length()<5)return false;
          for(int i=0;i<qq.length();i++)
          if(!(((int)qq.charAt(i))<=57&&((int)qq.charAt(i))>=48))return false;
          return true;
          }
          public synchronized boolean isnumstr(String num)
          {
          if(num==null)return false;
          if(num.length()<1)return false;
          for(int i=0;i<num.length();i++)
          if(!(((int)num.charAt(i))<=57&&((int)num.charAt(i))>=48))return false;
          return true;
          }
          public synchronized String userstrlow(String user)
          {
          String newuserstr=user.trim();
          char[] lowstr=

          {@#\@#@#,@#\"@#,@#\n@#,@#&@#,@#\t@#,@#\r@#,@#<@#,@#>@#,@#/@#,@#\\@#,@##

          @#};
          for(int i=0;i<lowstr.length;i++)
          newuserstr=newuserstr.replace(lowstr[i],@#+@#);
          return newuserstr;
          }
          public synchronized boolean userstrchk(String user)
          {
          String newuserstr=user.trim();
          char[] lowstr=

          {@#\@#@#,@#\"@#,@#\n@#,@#&@#,@#\t@#,@#\r@#,@#<@#,@#>@#,@#/@#,@#\\@#,@##

          @#,@#~@#,@#`@#,@#!@#,@#@@#,@#$@#,@#%@#,@#^@#,@#*@#,@#(@#,@#)@#,@#-

          @#,@#_@#,@#+@#,@#=@#,@#|@#,@#?@#,@#,@#,@#;@#,@#.@#};
          for(int i=0;i<lowstr.length;i++)
          newuserstr=newuserstr.replace(lowstr[i],@#+@#);
          return (user.equals(newuserstr))?true:false;
          }
          public synchronized boolean istelstr(String tel)
          {
          if(tel==null)return false;
          if(tel.length()<1)return false;
          if(tel.length()>32)return false;
          for(int i=0;i<tel.length();i++)
          if(!(((int)tel.charAt(i))<=57&&((int)tel.charAt(i))>=48))if(tel.charAt

          (i)!=@#-@#)return false;
          return true;
          }
          public synchronized boolean urlcheck(String url)
          {
          if(url==null)return false;
          if(url.length()<10)return false;
          String urls=url.toLowerCase();
          if(!urls.startsWith("http://"))return false;
          if(url.indexOf("<")>0||url.indexOf(">")>0)return false;
          return true;
          }
          public synchronized String isotogbk(String iso)throws Exception
          {
           if(iso!=null)return (new String(iso.getBytes(isostr),gbkstr));
           if(iso.length()<1)return "";
           return null;
          }
          public synchronized String gbktoiso(String gbk)throws Exception
          {
           if(gbk!=null)return (new String(gbk.getBytes(gbkstr),isostr));
           if(gbk.length()<1)return "";
           return null;
          }
          public synchronized String HTMLcode(String TXTcode)
          {
           String newstr="";
           if(TXTcode==null)return "";
           newstr=TXTcode;
           newstr=replace(newstr,"&","&amp;");
           newstr=replace(newstr,"\"","&quot;");
           newstr=replace(newstr," ","&nbsp;");
           newstr=replace(newstr,"<","&lt;");
           newstr=replace(newstr,">","&gt;");
           newstr=replace(newstr,"\@#","&#00039;");
           return newstr;
          }
          public synchronized String Unhtmlcode(String str)
          {
           String newstr="";
           if(str==null)return "";
           if(str.length()<1)return "";
           newstr=str;
           newstr=replace(newstr,"&amp;","&");
           //newstr=replace(newstr,"&quot;","\"");
           newstr=replace(newstr,"&nbsp;"," ");
           newstr=replace(newstr,"&quot;","\"");
           //newstr=replace(newstr,"&lt;","<");
           //newstr=replace(newstr,"&gt;",">");
           newstr=replace(newstr,"&#00039;","\@#");
           return newstr;
          }
          public synchronized String Unhtmlcodea(String str)
          {
           String newstr="";
           if(str==null)return "";
           if(str.length()<1)return "";
           newstr=str;
           newstr=replace(newstr,"&amp;","&");
           newstr=replace(newstr,"&quot;","\"");
           newstr=replace(newstr,"&nbsp;"," ");
           newstr=replace(newstr,"&lt;","<");
           newstr=replace(newstr,"&gt;",">");
           newstr=replace(newstr,"&#00039;","\@#");
           return newstr;
          }
          public synchronized String dostrcut(String oldstr,int length)
          {
           int i=0;
           int j=0;
           int k=0;
           String newstr="";
           if(oldstr==null)return "";
           if(length<=0)return "";
           for(i=0;i<oldstr.length();i++)
           {
            if(oldstr.charAt(i)==@#\n@#)j=0;
            else if(((int)(oldstr.charAt(i)))>255)j+=2;
            else j++;
            if((j/2)>=length)
            {
             newstr=newstr.concat(oldstr.substring(k,i)+"\n");
             k=i;
             j=0;
            }
           }
           newstr=newstr.concat(oldstr.substring(k)+"\n");
           return newstr;
          }
          public synchronized String inttodateshow(int datenum)
          {
           int year=0;
           int month=0;
           int day=0;
           int hour=0;
           int minute=0;
           int second=0;
           String datestr="";
           java.util.Date d;
           d=new java.util.Date((long)(datenum)*1000);
           java.util.Calendar ds=java.util.Calendar.getInstance();
           ds.setTime(d);
           year=ds.get(java.util.Calendar.YEAR);
           month=ds.get(java.util.Calendar.MONTH);
           day=ds.get(java.util.Calendar.DATE);
           hour=ds.get(java.util.Calendar.HOUR_OF_DAY);
           minute=ds.get(java.util.Calendar.MINUTE);
           second=ds.get(java.util.Calendar.SECOND);
           datestr=Integer.toString(year)+"/"+Integer.toString(1+month)

          +"/"+Integer.toString(day);
           return datestr;
          }
          public synchronized String nowdateshow()
          {
           int year=0;
           int month=0;
           int day=0;
           int hour=0;
           int minute=0;
           int second=0;
           String datestr="";
           java.util.Calendar ds=java.util.Calendar.getInstance();
           year=ds.get(java.util.Calendar.YEAR);
           month=ds.get(java.util.Calendar.MONTH);
           day=ds.get(java.util.Calendar.DATE);
           hour=ds.get(java.util.Calendar.HOUR_OF_DAY);
           minute=ds.get(java.util.Calendar.MINUTE);
           second=ds.get(java.util.Calendar.SECOND);
           datestr=Integer.toString(year)+"/"+Integer.toString(1+month)

          +"/"+Integer.toString(day);
           return datestr;
          }
          public synchronized java.util.Date inttodate(int datenum)
          {
           int year=0;
           int month=0;
           int day=0;
           String datestr="";
           java.util.Date d;
           d=new java.util.Date((long)(datenum)*1000);
           return d;
          }
          public synchronized int datetoint()
          {
           java.util.Date d=null;
           long ds=0;
           d=new java.util.Date();
           ds=d.getTime();
           return (int)(ds/1000);
          }
          public synchronized int datetoint(java.util.Date d)
          {
           long ds=0;
           ds=d.getTime();
           return (int)(ds/1000);
          }
          public synchronized String overlengthcut(String str,int length)
          {
           int i=0;
           int j=0;
           if(str==null)return "";
           if(length<0)return "";
           if(str.length()<=length)return str;
           for(i=0;i<str.length();i++)
           {
            if(((int)(str.charAt(i)))>255)j+=2;
            else j++;
            if((j/2)>=length)
            {
             return str.substring(0,i);
            }
           }
           return str;
          }
          public synchronized String replace(String str,String suba,String subb)
          {
          String newstr="";
          int start=0;
          int offset=0;
          int subalength=0;
          int strlength=0;
          if(str==null||suba==null||subb==null)return str;
          if(suba.equals(subb))return str;
          if(str.length()<suba.length()||str.length()<subb.length())return str;
          if(str.length()>0&&suba.length()>0&&subb.length()>0)
          {
           subalength=suba.length();
           strlength=str.length();
           while(true)
           {
            if(str.indexOf(suba)<0)break;
            if(offset>strlength)break;
            start=str.indexOf(suba,offset);
            if(start<offset)break;
            newstr=newstr.concat(str.substring(offset,start));
            newstr=newstr.concat(subb);
            offset=start+subalength;
           }
           newstr=newstr.concat(str.substring(offset));
           return newstr;
          }
          else
          {
           return str;
          }
          }
          }

          posted on 2007-08-03 15:07 jacksontoto 閱讀(191) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 隆化县| 丰台区| 潢川县| 金川县| 阿拉善盟| 沙坪坝区| 苍梧县| 定边县| 定州市| 德阳市| 舞钢市| 承德县| 华坪县| 宁安市| 海城市| 濮阳县| 镇赉县| 华容县| 兰溪市| 井研县| 高尔夫| 漠河县| 双桥区| 商南县| 偏关县| 阳泉市| 信阳市| 武夷山市| 大关县| 盐亭县| 定结县| 元江| 务川| 健康| 若尔盖县| 邻水| 本溪市| 工布江达县| 聂荣县| 柘城县| 佛教|