扩展String功能方法

一直好忙,没有时间写属于自己的东西,但是看着一天天不更新心情也不是个滋味,只有从网上收罗一些比较好的东东贴上。
/*** 删除首尾空格 ***/
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);
}

(0)

相关推荐

  • 扩展String功能方法

    一直好忙,没有时间写属于自己的东西,但是看着一天天不更新心情也不是个滋味,只有从网上收罗一些比较好的东东贴上. /*** 删除首尾空格 ***/ String.prototype.Trim = function() {   return this.replace(/(^\s*)|(\s*$)/g, ""); } /*** 统计指定字符出现的次数 ***/ String.prototype.Occurs = function(ch) { //  var re = eval("/

  • 扩展JavaScript功能的正确方法(译文)

    早上看到<JavaScript 每周导读>[第三期]一文,里面发现一篇文章(Extending JavaScript – The Right Way),觉得还不错,翻译过来跟大家共享,本文并不是逐字逐句进行翻译,尽量说得通俗易懂. 原文地址:Extending JavaScript – The Right Way 以下是译文 JavaScript已经内置了很多强大的方法,但有时你需要的某个功能在内置的方法中没有,我们怎么来优雅地扩展JavaScript功能呢. 例如我们想增加一个capital

  • JS扩展String.prototype.format字符串拼接的功能

    1.题外话,有关概念理解:String.prototype 属性表示 String原型对象.所有 String 的实例都继承自 String.prototype. 任何String.prototype上的改变都会影响到所有的 String 实例. 2.上正文,js扩展String.prototype.format字符串拼接的功能,首先是基础功能的改造: String.prototype.format = function(){ if(arguments.length==0){ return th

  • JavaScript基于扩展String实现替换字符串中index处字符的方法

    本文实例讲述了JavaScript基于扩展String实现替换字符串中index处字符的方法.分享给大家供大家参考,具体如下: 核心代码: String.prototype.replaceCharAt = function(n,c){ return this.substr(0, n)+ c + this.substr(n+1,this.length-1-n); } 用法示例: <!DOCTYPE html> <html lang="en"> <head&g

  • java中String.intern()方法功能介绍

    下文笔者讲述java中String.intern()方法的功能简介说明,如下所示: String.intern原理 String.intern():    此方法是一个Native方法      底层调用C++的 StringTable::intern方法实现 当通过语句str.intern()调用intern()方法后    JVM 就会在当前类的常量池中查找是否存在与str等值的String     若存在则直接返回常量池中相应Strnig的引用     若不存在,则会在常量池中创建一个等值

  • solr 配置中文分析器/定义业务域/配置DataImport功能方法(测试用)

    一.配置中文分析器 使用IKAnalyzer 配置方法: 1)把IK的jar包添加到solr工程中/WEB-INF/lib目录下 2)把IK的配置文件扩展词典,放到classpath下./WEB-INF/classes目录下 3)在schema.xml中定义FieldType,指定使用IK作为分析器 <!-- IKAnalyzer--> <fieldType name="text_ik" class="solr.TextField"> <

  • .NET 6实现基于JWT的Identity功能方法详解

    目录 需求 目标 原理与思路 实现 引入Identity组件 添加认证服务 使用JWT认证和定义授权方式 引入认证授权中间件 添加JWT配置 增加认证用户Model 实现认证服务CreateToken方法 添加认证接口 保护API资源 验证 验证1: 验证直接访问创建TodoList接口 验证2: 获取Token 验证3: 携带Token访问创建TodoList接口 验证4: 更换Policy 一点扩展 总结 参考资料 需求 在.NET Web API开发中还有一个很重要的需求是关于身份认证和授

  • java获取文件扩展名的方法小结【正则与字符串截取】

    本文实例讲述了java获取文件扩展名的方法.分享给大家供大家参考,具体如下: 问题描述:  有一个String类型:String imageName = "zy.jpg"; 请问我如何截取"."后面的后辍名. 解决方法一:使用正则表达式 package csdnTest; import java.util.regex.*; public class CSDNTest { public static void main(String[] ss) { String s=

  • Java中区别.toString() ,(String),valueOf()方法

    在java项目的实际开发和应用中,常常需要用到将对象转为String这一基本功能.本文将对常用的转换方法进行一个总结.常用的方法有Object.toString(),(String)要转换的对象,String.valueOf(Object)等.下面对这些方法一一进行分析. 方法1:采用 Object.toString()方法请看下面的例子: Object object = getObject(); System.out.println(object.toString()); 在这种使用方法中,因

  • C#动态加载dll扩展系统功能的方法

    本文实例讲述了C#动态加载dll扩展系统功能的方法.分享给大家供大家参考.具体分析如下: 动态加载dll,主要是为了扩展功能,增强灵活性而实现的.主要通过xml配置,来获取所有要动态加载的dll,然后通过反射机制来调用dll中的类及其方法. using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Reflection; using System.Text; u

随机推荐