十二、js去掉空格_比较字符长度_中英文判断_页面初始化_简体字与繁字体判断
1、去掉字符串前后所有空格
function trimBlank(str){ return str.replace(/(^\s*)|(\s*$)/g, ""); }
2、字符串长度比较:
因为数据库NLS_CHARACTERSET值为AL32UTF8,决定了:一个汉字占三个字节,超长后会入库失败,报错字段超长
参数说明:param:字符串,leng:指定长度
function stringLengthCheck(param,leng){ var str = param ; var i,sum; sum=0; for(i=0;i<str.length;i++) { if ((str.charCodeAt(i)>=0) && (str.charCodeAt(i)<=255)) sum=sum+1; else sum=sum+3; } return sum>leng; }
3、既不是英文,也不是中文返回true,否则返回false
function englishOrChinaCheck(str) { var chinese = /^[\u4e00-\u9fa5]+$/;//中文 var english = /^[a-zA-Z]+$/;//英文 if (!chinese.test(str)&&!english.test(str)) { return true; }; return false; };
4、页面初始化的四种方法
window.onload=function(){ alert("张三"); } function onload(){ alert("张三") }; $(function(){ alert("张三");}); jQuery(function($){ alert("张三")} );
js用正则表达式通过验证被验证汉字的码位是否在此范围之内来判断是否为汉字,繁体中文也是中文的一部分同样在4E00到9FA5的范围之内.所以无法通过正则表达式区分简体中文或者繁体字。但是可以通过java实现对简体中文或者繁体字的区分,代码如下:
public static String isSimpleOrComplex(String name,Object obj) { if(obj!=null&&!"".equals(obj)){ String encode ="GB2312"; String objStr= obj.toString(); try { if (!objStr.equals(new String(objStr.getBytes(encode), encode))) { return name + ":中不得填写繁体字"; } } catch (UnsupportedEncodingException e) { e.printStackTrace(); } } return ""; }
说明:中国台湾、香港与澳门等使用繁体中文的地区使用的是Big5字符集,共收录13,060个中文字,GB2312和GBK通行于中国大陆,和采用简体中文标准的其它使用中文地区,比如新加坡。
细水长流,打磨濡染,渐趋极致,才是一个人最好的状态。