//数値チェック
function isNumeric(num){
	if(num.match(/^[-]?[0-9]+\.?[0-9]*$/g)){
		return true;
	}
	return false;
}
//数値チェック(NULLOK)
function isNumericOrNull(num){
	if(num.match(/^[-]?[0-9]+\.?[0-9]*$/g)){
		return true;
	}
	if(num=='')return true;
	return false;
}
//整数チェック
function isInteger(num){
	if(num.match(/^[-]?[0-9]+$/g)){
		return true;
	}
	return false;
}
//整数チェック(NULLOK)
function isIntegerOrNull(num){
	if(num.match(/^[-]?[0-9]+$/g)){
		return true;
	}
	if(num=='')return true;
	return false;
}

//文字列のバイト数を返します
function GetByteLength(s){
    var r = 0;
    for (var i = 0; i < s.length; i++) {
        var c = s.charCodeAt(i);
        // Shift_JIS: 0x0 〜 0x80, 0xa0  , 0xa1   〜 0xdf  , 0xfd   〜 0xff
        // Unicode  : 0x0 〜 0x80, 0xf8f0, 0xff61 〜 0xff9f, 0xf8f1 〜 0xf8f3
        if ( (c >= 0x0 && c < 0x81) || (c == 0xf8f0) || (c >= 0xff61 && c < 0xffa0) || (c >= 0xf8f1 && c < 0xf8f4)) {
            r += 1;
        } else {
            r += 2;
        }
    }
    return r;
}

//日付チェック
function isDate(s){
	// 正規表現による書式チェック 
	if(!s.match(/^([0-9]{4})\/([0-9]{1,2})\/([0-9]{1,2})$/)){
		return(false);
	}

	//年月日を分離
	var y=parseInt(RegExp.$1,10);
	var m=parseInt(RegExp.$2,10);
	var d=parseInt(RegExp.$3,10);

	//月の範囲チェック
	if(m<1 || m>12)return(false);

	//日の範囲チェック
	if(d<1 || d>GetMaxDay(y,m))return(false);

	return(true);
}

//時間チェック
function isTime(s){
	// 正規表現による書式チェック 
	if(!s.match(/^([0-9]{1,2})\:([0-9]{1,2})$/)){
		return(false);
	}

	//年月日を分離
	var h=parseInt(RegExp.$1,10);
	var m=parseInt(RegExp.$2,10);

	//月の範囲チェック
	if(!(h >= 0 && h <= 24 && m >= 0 && m <= 59))return(false);

	return(true);
}

//閏年チェック
function isLeapYear(year){
	return(year%4==0 && (year%100!=0 || year%400==0));
}

//指定年月の最大日数を返す
function GetMaxDay(year,month){
	days = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
	if(month==2 && isLeapYear(year))return(29);
	return days[month-1];
}
//カンマ編集をして返す
function number_format(value){
	var i;
	value=value+'';
	for(i = 0; i < value.length/3; i++){
		value = value.replace(/^([+-]?\d+)(\d\d\d)/,"$1,$2");
	}
	return value;
}
//カンマを除去して返す
function remove_comma(value){
    return value.split(",").join("");
}

//前ゼロをつけて返す
function add_zero(num_value,num_len) {
	var ret=(""+num_value);
	var wk_len=(""+num_value).length;
	if(wk_len<num_len){
		for(var i=0;i<num_len-wk_len;i++){
			ret="0"+ret;
		}
	}
	return(ret);
}

//指定オブジェクトの半角アルファベットを全角に変換してセットします
function chktext_azToAZ(oj) {
	var newStr = ''

	for (i=0;i<oj.value.length;i++){
		if (straz.indexOf(oj.value.charAt(i)) != -1) 
		newStr += strAZ.charAt(straz.indexOf(oj.value.charAt(i)))
	else
		newStr += oj.value.charAt(i)
	}

	oj.value = newStr
}

//メールアドレス形式チェック
function isMailAddr(s){
	if(s.match("^[0-9A-Za-z._\-]+@[0-9A-Za-z.\-]+$")){
		return(true);
	}else{
		return(false);
	}
}
