计算包含汉字字符串的长度,如果直接使用str.length()计算,得出的结果往往不准确。在java中,一个字符两个字节,而一个字节等于8位二进制。英文和数字占一个字节,中文占两个字节。

public static int getStrLength(String str){
     int strLength=0;
     String chinese= "[\u0391-\uFFE5]";
     for(int i=0;i<str.length();i++){
          //判断是否是中文字符
          if(str.subString(i,i+1).matches(chinese)){
                strLength+=2;
          }else{
                strLength+=1;
          }
     }
     return strLength;
}

判断字符串是否含有除汉字,英文,数字,空格,-,_之外的特殊符号

public static boolean conSpeCharacters(String str){
    if(str.replaceAll("[\u4e00-\u9fa5]*[a-z]*[A-Z]*\\d*-*_*\\s*","").length()==0){
          return false;
     }
     return true;
}

jquery验证特殊字符之智能输中文,字母,数字。

var sReg = /^[\u0391-\uFFE5A-Za-z0-9\s]+$/;   //不能输入特殊字符(可含空格) 能输入中文状态下的!¥之类的
var sReg = /^[\u4E00-\u9FA5A-Za-z0-9\s]+$/;   //不能输入特殊字符(可含空格) 不能输入中文状态下的!¥之类的

正则表达式常用元字符

 

 posted on 2022-04-01 21:22  会飞的金鱼  阅读(153)  评论(0)    收藏  举报