﻿// JavaScript Document

function trim(str){return str.replace(/(^\s*)|(\s*$)/g, "");}
function ltrim(str){return str.replace(/(^\s*)/g,"");}
function rtrim(str){return str.replace(/(\s*$)/g,"");}
function isEmpty(str){str=trim(str); return str.length==0;}
function isNumber(s){var p=/^\d+$/;return p.test(s);}
function isInt(s){var p=/^[1-9]\d*$/;return p.test(s);}
function isIntAndZero(s){var p=/^([1-9]\d*)|0$/;return p.test(s);}
function isSingleChar(str){var p=/^[\x00-\xff]+$/;return p.test(str);}
function isDoubleChar(str){var p=/^[\x00-\xff]+$/;return !p.test(str);}
function isPhone(str){str=trim(str);if(/^[\+\d][\d]+[\-\d]*\d$/.test(str)){if(/.{3,32}/.test(str)) return true;}else  return false;}
function isEmail(str){var p=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/; return p.test(trim(str));}
function isUrl(str){var p=/^https?:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/; return p.test(trim(str));}
function isJpZip(str){var p=/^\d{3}\-\d{4}$/; return p.test(trim(str));}

function isSimDate(str){var p=/^\d{4}(\-|\/|\.)\d{1,2}\1\d{1,2}$/; return p.test(trim(str));}

function isChinese(str){var p=/^[\u4e00-\u9fa5]+$/; return p.test(trim(str));}
function isHiragana(str){var p=/^[\u3040-\u309F]+$/; return p.test(trim(str));}
function isKatakana(str){var p=/^[\u30A0-\u30FF]+$/; return p.test(trim(str));}

function getFileName(s){
    return s.substring(s.lastIndexOf("\\")+1);	
}
function getStrLength(s){  
      s=trim(s);
      var len=0;
      for(var i=0;i<s.length;i++){if(s.charCodeAt(i)>255) len=len+2;else len++;}  
	  return len;
}

function isJpg(str){
		var str = str.substring(str.lastIndexOf("\\")+1,str.length);
	    Ary = str.split('.');
        type=Ary[Ary.length-1]; 
	    if(type != "jpg" && type != "JPG"){ return false; }
		else{ return true; }
}
function isPdf(str){
		var str = str.substring(str.lastIndexOf("\\")+1,str.length);
	    Ary = str.split('.');
        type=Ary[Ary.length-1]; 
	    if(type != "pdf" && type != "PDF"){ return false; }
		else{ return true; }
}
function isExcel(str){
		var str = str.substring(str.lastIndexOf("\\")+1,str.length);
	    Ary = str.split('.');
        type=Ary[Ary.length-1]; 
	    if(type != "xls" && type != "xlsx"){ return false; }
		else{ return true; }
}

function formatNumber(num,pattern){  
  var strarr = num?num.toString().split('.'):['0'];  
  var fmtarr = pattern?pattern.split('.'):[''];  
  var retstr='';  
  
  // 整数部分  
  var str = strarr[0];  
  var fmt = fmtarr[0];  
  var i = str.length-1;    
  var comma = false;  
  for(var f=fmt.length-1;f>=0;f--){  
    switch(fmt.substr(f,1)){  
      case '#':  
        if(i>=0 ) retstr = str.substr(i--,1) + retstr;  
        break;  
      case '0':  
        if(i>=0) retstr = str.substr(i--,1) + retstr;  
        else retstr = '0' + retstr;  
        break;  
      case ',':  
        comma = true;  
        retstr=','+retstr;  
        break;  
    }  
  }  
  if(i>=0){  
    if(comma){  
      var l = str.length;  
      for(;i>=0;i--){  
        retstr = str.substr(i,1) + retstr;  
        if(i>0 && ((l-i)%3)==0) retstr = ',' + retstr;   
      }  
    }  
    else retstr = str.substr(0,i+1) + retstr;  
  }  
  
  retstr = retstr+'.';  
  // 处理小数部分  
  str=strarr.length>1?strarr[1]:'';  
  fmt=fmtarr.length>1?fmtarr[1]:'';  
  i=0;  
  for(var f=0;f<fmt.length;f++){  
    switch(fmt.substr(f,1)){  
      case '#':  
        if(i<str.length) retstr+=str.substr(i++,1);  
        break;  
      case '0':  
        if(i<str.length) retstr+= str.substr(i++,1);  
        else retstr+='0';  
        break;  
    }  
  }  
  return retstr.replace(/^,+/,'').replace(/\.$/,'');  
}


function Fulltohalf(data){
var char1 = new Array("１","２","３","４","５","６","７","８","９","０");
var char2 = new Array(1,2,3,4,5,6,7,8,9,0);
var count;
while(data.match(/[０-９]/)){
    for(count = 0; count < char1.length; count++){
       data = data.replace(char1[count], char2[count]);
	}
}
return data;
}