扩展String功能方法

 更新时间:2006年09月22日 00:00:00   作者:  
一直好忙,没有时间写属于自己的东西,但是看着一天天不更新心情也不是个滋味,只有从网上收罗一些比较好的东东贴上。
/*** 删除首尾空格 ***/
String.prototype.Trim = function() {
  return this.replace(/(^\s*)|(\s*$)/g, "");
}

/*** 统计指定字符出现的次数 ***/
String.prototype.Occurs = function(ch) {
//  var re = eval("/[^"+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() {
  return this.replace(/[^\x00-\xff]/g,"**").length;
}

/*** 检查是否包含汉字 ***/
String.prototype.isInChinese = function() {
  return (this.length != this.replace(/[^\x00-\xff]/g,"**").length);
}

/*** 简单的email检查 ***/
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("/["+list+"]/");
  return re.test(this);
}

相关文章

  • js或css实现滚动广告的几种方案

    js或css实现滚动广告的几种方案

    今天无事逛网,突然发现了一个很有趣的事情,(也许只有我觉得有趣).我看到一图片竟然在我拖动滚动条的时候没有动,也许你会说我少见多怪,不信你去找个这样的我看看,很少有的,一般的都是一拖动图片就在那跳得厉害。
    2010-01-01
  • JavaScript设计模式之原型模式(Object.create与prototype)介绍

    JavaScript设计模式之原型模式(Object.create与prototype)介绍

    这篇文章主要介绍了JavaScript设计模式之原型模式(Object.create与prototype)介绍,原型模式指使用原型实例来拷贝、创建新的可定制的对象,新建的对象,不需要知道原对象创建的具体过程,需要的朋友可以参考下
    2014-12-12
  • JS 组件系列之Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案

    JS 组件系列之Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案

    这篇文章主要介绍了JS 组件系列之Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案,需要的朋友可以参考下
    2017-06-06
  • js限制文本框只能输入中文的方法

    js限制文本框只能输入中文的方法

    这篇文章主要介绍了js限制文本框只能输入中文的方法,涉及javascript正则匹配及鼠标事件的相关技巧,非常简单实用,需要的朋友可以参考下
    2015-08-08
  • js获取class的所有元素

    js获取class的所有元素

    ie不支持getElementsByClassName,所以要自己实现获取类名为className的所有元素。
    2013-03-03
  • 微信小程序实现下拉框功能

    微信小程序实现下拉框功能

    这篇文章主要为大家详细介绍了微信小程序实现下拉框功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • JavaScript 报表展示实现代码

    JavaScript 报表展示实现代码

    以下是从网上找到的一段JavaScript实现图形报表的代码,对于想客户端显示报表的朋友可以参考下。
    2009-12-12
  • Javascript仿PHP $_GET获取URL中的参数

    Javascript仿PHP $_GET获取URL中的参数

    这篇文章主要介绍了Javascript仿PHP $_GET获取URL中的参数代码实例,需要的朋友可以参考下
    2014-05-05
  • JavaScript箭头函数中的this详解

    JavaScript箭头函数中的this详解

    这篇文章主要介绍了JavaScript箭头函数中的this详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,,需要的朋友可以参考下
    2019-06-06
  • uni-app中实现元素拖动效果

    uni-app中实现元素拖动效果

    这篇文章主要介绍了uni-app中实现元素拖动效果,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2024-01-01

最新评论