js字符串常用判断方法
转自:http://blog.sina.com.cn/s/blog_6819fa800100j5t6.html
一、方法介绍
- function obj$(id) 根据id得到对象
- function val$(id) 根据id得到对象的值
- function trim(str) 删除左边和右边空格
- function ltrim(str) 删除左边空格
- function rtrim (str) 删除右边空格
- function isEmpty(str) 字串是否有值
- function equals(str1, str2) js判断比较两字符串是否相等
- function equalsIgnoreCase(str1, str2) js判断忽略大小写比较两个字符串是否相等
- function isChinese(str) js判断判断是否中文
- function isEmail(strEmail) js判断是否电子邮件
- function isImg(str) js判断是否是一个图片格式的文件jpg|jpeg|swf|gif
- function isInteger(str) js判断是否是一个整数
- function isFloat js判断是否是一个浮点数
- function isPost(str) js判断是否邮编(1位至6位
- function isMobile(str) js判断是否是手机号
- function isPhone(str) js判断是否是电话号码必须包含区号,可以含有分机号
- function isQQ(str) js判断是否合法的QQ号码
- function isIP(str) js判断是否是合法的IP
- function isDate(str) js判断是否日期类型(例:2005-12-12)
- function isIdCardNo(idNumber) js判断是否是合法的身份证号
二、方法具体
function obj$(id)
{
return document.getElementByIdx(id);
} function val$(id)
{
var obj = document.getElementByIdx(id);
if(obj !== null)
{
return obj.value;
}
return null;
} function trim(str)
{
return str.replace(/(^\s*)|(\s*$)/g, '');
} function ltrim(str)
{
return str.replace(/^\s*/g,'');
} function rtrim(str)
{
return str.replace(/\s*$/,'');
} function isEmpty(str)
{
if(str != null && str.length > 0)
{
return true;
}
return false;
} function equals(str1, str2)
{
if(str1 == str2)
{
return true;
}
return false;
} function equalsIgnoreCase(str1, str2)
{
if(str1.toUpperCase() == str2.toUpperCase())
{
return true;
}
return false;
} function isChinese(str)
{
var str = str.replace(/(^\s*)|(\s*$)/g,'');
if (!(/^[\u4E00-\uFA29]*$/.test(str)
&& (!/^[\uE7C7-\uE7F3]*$/.test(str))))
{
return false;
}
return true;
} function isEmail(str)
{
if(/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/.test(str))
{
return true
}
return false;
} function isImg(str)
{
var objReg = new RegExp("[.]+(jpg|jpeg|swf|gif)$", "gi");
if(objReg.test(str))
{
return true;
}
return false;
} function isInteger(str)
{
if(/^-?\d+$/.test(str))
{
return true;
}
return false;
} function isFloat(str)
{
if(/^(-?\d+)(\.\d+)?$/.test(str)
{
return true;
}
return false;
} function isPost(str)
{
if(/^\d{1,6}$/.test(str))
{
return true;
}
return false;
} function isMobile(str)
{
if(/^1[35]\d{9}/.test(str))
{
return true;
}
return false;
} function isPhone(str)
{
if(/^(0[1-9]\d{1,2}-)\d{7,8}(-\d{1,8})?/.test(str))
{
return true;
}
return false;
} function isQQ(str){
if(/^\d{5,9}$/.test(str))
{
return true;
}
return false;
} function isIP(str){
var reg = /^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$/;
if(.test(str))
{
return true;
}
return false;
} function isDate(str)
{
var reg = /^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$/;
if(reg.test(str))
{
return true;
}
return false;
} function isIdCardNo(idNumber)
{
var factorArr = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1);
var varArray = new Array();
var lngProduct = 0;
var intCheckDigit;
var idNumber.length = ; if ((idNumber.length != 15) && (idNumber.length != 18))
{
return false;
}
for(i=0;i<idNumber.length;i++)
{
varArray[i] = idNumber.charAt(i);
if ((varArray[i] < '0' || varArray[i] > '9') && (i != 17))
{
return false;
}
else if (i < 17)
{
varArray[i] = varArray[i]*factorArr[i];
}
}
if (idNumber.length == 18)
{
var date8 = idNumber.substring(6,14);
if (checkDate(date8) == false)
{
return false;
}
for(i=0;i<17;i++)
{
lngProduct = lngProduct + varArray[i];
}
intCheckDigit = 12 - lngProduct % 11;
switch (intCheckDigit)
{
case 10:
intCheckDigit = 'X';
break;
case 11:
intCheckDigit = 0;
break;
case 12:
intCheckDigit = 1;
break;
}
if (varArray[17].toUpperCase() != intCheckDigit)
{
return false;
}
}
else
{
var date6 = idNumber.substring(6,12);
if (checkDate(date6) == false)
{
return false;
}
}
return true;
}
js字符串常用判断方法的更多相关文章
- js字符串常用的方法总结,及其用法
JS自带函数concat将两个或多个字符的文本组合起来,返回一个新的字符串.var a = "hello";var b = ",world";var c = a ...
- python3【基础】-字符串 常用的方法
字符串一个最重要的特性就是不可修改. name.capitalize() 首字母大写 name.casefold() 大写全部变小写 name.center(50,"-") 输出 ...
- Python语言学习:字符串常用的方法
python字符串常用的方法 1. find( ):在字符串中搜索指定的值并返回它被找到的位置,如果没有找到,则返回-1 string.find(value,start,end) #value:必需, ...
- js数据类型的判断方法
判断js中的数据类型有一下几种方法:typeof.instanceof. constructor. prototype. $.type()/jquery.type(),接下来主要比较一下这几种方法的异 ...
- String类的常用判断方法使用练习
选取了一些常用的判断方法进行了使用练习,后续跟新其他方法 package StringDemo; // String类的判断方法解析 // 1:boolean equals(); // 判断字符串是否 ...
- python字符串常用的方法解析
这是本人在学习python过程中总结的一些关于字符串的常用的方法. 文中引用了python3.5版本内置的帮助文档,大致进行翻译,并添加了几个小实验. isalnum S.isalnum() -> ...
- 前端基础——js数据类型及判断方法
一.数据类型 我们通常熟知的数据类型有六种,包括5种基本数据类型(Number, String, Boolean, Undefined, Null)和一种引用数据类型(Object).ES6又新增了一 ...
- JS 数组常用的方法
数组常用的方法: x.toString()方法:任何对象都有toString方法. 将任何对象转为字符串. 一般不主动调用,系统在需要时自动调用 x.valueOf()方法:同toStr ...
- Python 字符串常用判断函数
判断字符串常用函数: S代表某字符串 S.isalnum() 所有字符都是数字或字母,为真返回Ture,否则返回False S.isalha() 所有字符都是字母,为真返回Ture,否则返回 ...
随机推荐
- [swustoj 785] Divide Tree
Divide Tree(0785) 问题描述 As we all know that we can consider a tree as a graph. Now give you a tree wi ...
- UVA 11396 Claw Decomposition(二分图)
以“爪”形为单元,问所给出的无向图中能否被完全分割成一个个单元. 分析图的性质,由于已知每个点的度是3,所以“爪”之间是相互交错的,即把一个“爪”分为中心点和边缘点,中心点被完全占据,而边缘点被三个“ ...
- Java [leetcode 5] Longest Palindromic Substring
问题描述: Given a string S, find the longest palindromic substring in S. You may assume that the maximum ...
- USACO1.4.1 Packing Rectangles
//毕竟我不是dd牛,USACO的题解也不可能一句话带过的…… 题目链接:http://cerberus.delos.com:790/usacoprob2?a=pWvHFwGsTb2&S=pa ...
- 编译安装lnmp
http://wenku.baidu.com/view/ec45d5dd28ea81c758f578cc.html
- wifi详解(三)
1 WLAN驱动结构介绍 1.1 SDIO驱动 在drivers/mmc下面是mmc卡,SD卡和SDIO卡驱动部分,其中包括host驱动,card驱动和core部分,由于网络接 ...
- 【转】正确理解PHP程序编译时的错误信息
我们编写程序时,无论怎样小心谨慎,犯错总是在所难免的.这些错误通常会迷惑PHP编译器.如果开发人员无法了解编译器报错信息的含义,那么这些错误信息不仅毫无用处,还会常常让人感到沮丧. 编译PHP脚本时, ...
- [转] GIS二次开发(C#+AE)
乘风莫邪 原文GIS二次开发(C#+AE) 此过程描述了使用ArcGIS控件建立和部署应用的方法和步骤. 你可以在下面的目录下找到相应的样例程序: <</FONT>安装目录>/ ...
- 浅析基层检察院派驻乡镇检察室的健康发展 z
时间:2011-03-22 10:08 作者:祝志方 新闻来源:正义网 一.前言 在我国,基层检察院派驻乡镇检察室的发展经过了一个曲折发展的历程,上世纪80年代,随着经济社会的发展,一批乡镇检察室应运 ...
- redo文件三
switch logfile是一种昂贵的操作,在进行日志切换的时候,是不允许生成新的redo信息 在前台进程生成redo日志信息的时候,此时redo buffer已经分配了空间,并且在当前的redo日 ...