首页 > 代码库 > JAVA 字符处理

JAVA 字符处理

/**    * 分割字符串    *    * @param str String 原始字符串    * @param splitsign String 分隔符    * @return String[] 分割后的字符串数组    */  @SuppressWarnings("unchecked")  public static String[] split(String str, String splitsign) {      int index;      if (str == null || splitsign == null)        return null;      ArrayList al = new ArrayList();      while ((index = str.indexOf(splitsign)) != -1) {        al.add(str.substring(0, index));        str = str.substring(index + splitsign.length());      }      al.add(str);      return (String[]) al.toArray(new String[0]);  }    /**    * 替换字符串    *    * @param from String 原始字符串    * @param to String 目标字符串    * @param source String 母字符串    * @return String 替换后的字符串    */  public static String replace(String from, String to, String source) {      if (source == null || from == null || to == null)        return null;      StringBuffer bf = new StringBuffer("");      int index = -1;      while ((index = source.indexOf(from)) != -1) {        bf.append(source.substring(0, index) + to);        source = source.substring(index + from.length());        index = source.indexOf(from);      }      bf.append(source);      return bf.toString();  }    /**    * 替换字符串,能能够在HTML页面上直接显示(替换双引号和小于号)    *    * @param str String 原始字符串    * @return String 替换后的字符串    */  public static String htmlencode(String str) {      if (str == null) {        return null;      }        return replace("\"", """, replace("<", "<", str));  }    /**    * 替换字符串,将被编码的转换成原始码(替换成双引号和小于号)    *    * @param str String    * @return String    */  public static String htmldecode(String str) {      if (str == null) {        return null;      }        return replace(""", "\"", replace("<", "<", str));  }    private static final String _BR = "<br/>";    /**    * 在页面上直接显示文本内容,替换小于号,空格,回车,TAB    *    * @param str String 原始字符串    * @return String 替换后的字符串    */  public static String htmlshow(String str) {      if (str == null) {        return null;      }        str = replace("<", "<", str);      str = replace(" ", " ", str);      str = replace("\r\n", _BR, str);      str = replace("\n", _BR, str);      str = replace("\t", "    ", str);      return str;  }    /**    * 返回指定字节长度的字符串    *    * @param str String 字符串    * @param length int 指定长度    * @return String 返回的字符串    */  public static String toLength(String str, int length) {      if (str == null) {        return null;      }      if (length <= 0) {        return "";      }      try {        if (str.getBytes("GBK").length <= length) {          return str;        }      } catch (Exception ex) {      }      StringBuffer buff = new StringBuffer();        int index = 0;      char c;      length -= 3;      while (length > 0) {        c = str.charAt(index);        if (c < 128) {          length--;        } else {          length--;          length--;        }        buff.append(c);        index++;      }      buff.append("...");      return buff.toString();  }    /**    * 判断是否为整数    *    * @param str 传入的字符串    * @return 是整数返回true,否则返回false    */  public static boolean isInteger(String str) {      Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");      return pattern.matcher(str).matches();  }    /**    * 判断是否为浮点数,包括double和float    *    * @param str 传入的字符串    * @return 是浮点数返回true,否则返回false    */  public static boolean isDouble(String str) {      Pattern pattern = Pattern.compile("^[-\\+]?[.\\d]*$");      return pattern.matcher(str).matches();  }    /**    * 判断输入的字符串是否符合Email样式.    *    * @param str 传入的字符串    * @return 是Email样式返回true,否则返回false    */  public static boolean isEmail(String str) {      Pattern pattern = Pattern.compile("^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$");      return pattern.matcher(str).matches();  }    /**    * 判断输入的字符串是否为纯汉字    *    * @param str 传入的字符窜    * @return 如果是纯汉字返回true,否则返回false    */  public static boolean isChinese(String str) {      Pattern pattern = Pattern.compile("[\u0391-\uFFE5]+$");      return pattern.matcher(str).matches();  }    /**    * 是否为空白,包括null和""    *    * @param str    * @return    */  public static boolean isBlank(String str) {      return str == null || str.trim().length() == 0;  }    /** * 判断是不是合法手机 * handset 手机号码 */  public static boolean isHandset(String handset) {  try {     if(!handset.substring(0,1).equals("1")) {      return false;     }     if (handset==null || handset.length()!=11) {      return false;     }     String check = "^[0123456789]+$";     Pattern regex = Pattern.compile(check);     Matcher matcher = regex.matcher(handset);     boolean isMatched = matcher.matches();     if(isMatched) {      return true;     } else {      return false;     }  } catch (RuntimeException e) {     return false;  }  }  }  

  

JAVA 字符处理