您的位置:首页 > Web前端 > JavaScript

JS判断数字/字母/中文

2013-08-01 14:19 381 查看
1.过滤特殊字符:

var reg = /^(\w|[\u4E00-\u9FA5])*$/;

if(username.match(reg))

{

  return ture;

}

else

{

 alert("用户名只允许为英文,数字和汉字的混合,\n请检查是否前后有空格或者其他符号");

  return false;

}

2.利用正则表达式限制网页表单里的文本框输入内容:

用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"

onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"

用正则表达式限制只能输入全角字符:onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')"

onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"

用正则表达式限制只能输入数字:onkeyup="value=value.replace([^\d]/g,'')"

onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"

用正则表达式限制只能输入数字和英文:onkeyup="value=value.replace(/[\W]/g,'')"

onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"

数字 if(!isNaN(document.all.form.str.value)) {alert("数字");}

字母 var str = /[_a-zA-Z]/;if(str.test(document.all.form.str.value)) { alert("字母");}

* Trim 删除首位空格

* Occurs 统计指定字符出现的次数

* isDigit 检查是否由数字组成

* isAlpha 检查是否由数字字母和下划线组成

* isNumber 检查是否为数

* lenb 返回字节数

* isInChinese 检查是否包含汉字

* isEmail 简单的email检查

* isDate 简单的日期检查,成功返回日期对象

* isInList 检查是否有列表中的字符字符

* isInList 检查是否有列表中的字符字符

String.prototype.Trim = function()

{

  return this.replace(/(^\s*)|(\s*$)/g, "");

}

String.prototype.Occurs = function(ch)

{

 // var re = eval_r("/[^"+ch+"]/g");

 // return this.replace(re, "").length;

 return this.split(ch).length-1;

}

String.prototype.isDigit = function()

{

  var s = this.Trim();

  return (s.replace(/\d/g, "").length == 0);

}

String.prototype.isAlpha = function()

{

  return (this.replace(/\w/g, "").length ==0);

}

String.prototype.isNumber = function()

{

  var s = this.Trim();

  return (s.search(/^[+-]?[0-9.]*$/)>= 0);

}

String.prototype.lenb = function()

{

  returnthis.replace(/[^\x00-\xff]/g,"**").length;

}

String.prototype.isInChinese = function()

{

  return (this.length !=this.replace(/[^\x00-\xff]/g,"**").length);

}

String.prototype.isEmail = function()

{

 var strr;

  var mail = this;

 var re = /(\w+@\w+\.\w+)(\.{0,1}\w*)(\.{0,1}\w*)/i;

 re.exec(mail);

 if(RegExp.$3!="" &&RegExp.$3!="." &&RegExp.$2!=".")

    strr =RegExp.$1+RegExp.$2+RegExp.$3;

 else

  if(RegExp.$2!="" &&RegExp.$2!=".")

     strr = RegExp.$1+RegExp.$2;

  else

     strr =RegExp.$1;

 return (strr==mail);

}

String.prototype.isDate = function()

{

  var p;

  var re1 =/(\d{4})[年./-](\d{1,2})[月./-](\d{1,2})[日]?$/;

  var re2 =/(\d{1,2})[月./-](\d{1,2})[日./-](\d{2})[年]?$/;

  var re3 =/(\d{1,2})[月./-](\d{1,2})[日./-](\d{4})[年]?$/;

  if(re1.test(this)) {

  p = re1.exec(this);

  return new Date(p[1],p[2],p[3]);

  }

  if(re2.test(this)) {

  p = re2.exec(this);

  return new Date(p[3],p[1],p[2]);

  }

  if(re3.test(this)) {

  p = re3.exec(this);

  return new Date(p[3],p[1],p[2]);

  }

  return false;

}

String.prototype.isInList = function(list)

{

  var re = eval_r("/["+list+"]/");

  return re.test(this);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: