function keyfilter(filter, event) {
	if (!event) event=window.event;
	var c=getCharCode(event);
	if (c && !filter(c)) cancelEvent(event);
}
function getCharCode(event) {
	return typeof(event.charCode)=="undefined" ? (event.keyCode || event.which) : event.charCode;
}
function cancelEvent(event) {
	if (!event) event=window.event;
	if (event.preventDefault) event.preventDefault();
	else event.returnValue=false;
}
function keyfilter_Digit(event) {
	keyfilter(function(c) {return (c >= 48 && c <= 57) || c==13},event);
}
function keyfilter_Date(event) {
	keyfilter(function(c) {return (c >= 48 && c <= 57) || c==13 || c==46 || c==45},event);
}
function keyfilter_Double(event) {
	keyfilter(function(c) {return (c >= 48 && c <= 57) || c==13 || c==46 || c==44}, event);
}
function str_replace(miben, mit, mire){
	return miben.toString().split(mit).join(mire);
}
