JavaScript 正則表達(dá)式驗(yàn)證函數(shù)代碼
更新時(shí)間:2010年05月30日 03:25:51 作者:
上篇文章《JavaScript驗(yàn)證正則表達(dá)式大全》說(shuō)的是javascript中使用的正則表達(dá)式的例子,但是沒有說(shuō)這些正則表達(dá)式如何使用,現(xiàn)在給大家?guī)讉€(gè)例子,大家可以看看。
利用正則表達(dá)式判斷是否是0-9的阿拉伯?dāng)?shù)字
function regIsDigit(fData)
{
var reg = new RegExp("^[0-9]$");
return (reg.test(fData));
}
利用這則表達(dá)式獲取字符串的長(zhǎng)度
function regDataLength(fData)
{
var valLength = fData.length;
var reg = new RegExp("^[\u0391-\uFFE5]$");
var result = 0;
for(i=0; i< valLength; i++)
{
if(reg.test(fData.charAt(i)))
{
result += 2;
}
else
{
result ++;
}
}
return result;
}
應(yīng)用擴(kuò)展判斷是否是數(shù)值
function regIsNumber(fData)
{
var reg = new RegExp("^[-]?[0-9]+[\.]?[0-9]+$");
return reg.test(fData)
}
驗(yàn)證Email是否正確
function regIsEmail(fData)
{
var reg = new RegExp("^[0-9a-zA-Z]+@[0-9a-zA-Z]+[\.]{1}[0-9a-zA-Z]+[\.]?[0-9a-zA-Z]+$");
return reg.test(fData);
}
判斷手機(jī)號(hào)是否正確
function regIsPhone(fData)
{
var reg = /^(\+86)?(1[0-9]{10})$/;
return reg.test(fData);
}
// 判斷輸入是否是一個(gè)由 0-9 / A-Z / a-z 組成的字符串
function isalphanumber(str)
{
var result=str.match(/^[a-zA-Z0-9]+$/);
if(result==null) return false;
return true;
}
// 判斷輸入是否是一個(gè)數(shù)字--(數(shù)字包含小數(shù))--
function isnumber(str)
{
return !isNaN(str);
}
// 判斷輸入是否是一個(gè)整數(shù)
function isint(str)
{
var result=str.match(/^(-|\+)?\d+$/);
if(result==null) return false;
return true;
}
// 判斷輸入是否是有效的長(zhǎng)日期格式 - "YYYY-MM-DD HH:MM:SS" || "YYYY/MM/DD HH:MM:SS"
function isdatetime(str)
{
var result=str.match(/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
if(result==null) return false;
var d= new Date(result[1], result[3]-1, result[4], result[5], result[6], result[7]);
return (d.getFullYear()==result[1]&&(d.getMonth()+1)==result[3]&&d.getDate()==result[4]&&d.getHours()==result[5]&&d.getMinutes()==result[6]&&d.getSeconds()==result[7]);
}
// 檢查是否為 YYYY-MM-DD || YYYY/MM/DD 的日期格式
function isdate(str){
var result=str.match(/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
if(result==null) return false;
var d=new Date(result[1], result[3]-1, result[4]);
return (d.getFullYear()==result[1] && d.getMonth()+1==result[3] && d.getDate()==result[4]);
}
// 判斷輸入是否是有效的電子郵件
function isemail(str)
{
var result=str.match(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/);
if(result==null) return false;
return true;
}
// 去除字符串的首尾的空格
function trim(str){
return str.replace(/(^\s*)|(\s*$)/g, "");
}
// 返回字符串的實(shí)際長(zhǎng)度, 一個(gè)漢字算2個(gè)長(zhǎng)度
function strlen(str){
return str.replace(/[^\x00-\xff]/g, "**").length;
}
//匹配中國(guó)郵政編碼(6位)
function ispostcode(str)
{
var result=str.match(/[1-9]\d{5}(?!\d)/);
if(result==null) return false;
return true;
}
//匹配國(guó)內(nèi)電話號(hào)碼(0511-4405222 或 021-87888822)
function istell(str)
{
var result=str.match(/\d{3}-\d{8}|\d{4}-\d{7}/);
if(result==null) return false;
return true;
}
//校驗(yàn)是否為(0-10000)的整數(shù)
function isint1(str)
{
var result=str.match(/^[0-9]$|^([1-9])([0-9]){0,3}$|^10000$/);
if(result==null) return false;
return true;
}
//匹配騰訊QQ號(hào)
function isqq(str)
{
var result=str.match(/[1-9][0-9]{4,}/);
if(result==null) return false;
return true;
}
//匹配身份證(15位或18位)
function isidcard(str)
{
var result=str.match(/\d{15}|\d{18}/);
if(result==null) return false;
return true;
}
//校驗(yàn)文本是否為空
function checknull(field,sval)
{
if (field.value =="")
{
alert("請(qǐng)?zhí)顚? + sval + "!");
field.focus();
return false;
}
return true;
}
//屏蔽輸入字符
function checkChar()
{
var keycode = event.keyCode;
if(!(keycode>=48&&keycode<=57))
{
return false;
}
}
復(fù)制代碼 代碼如下:
function regIsDigit(fData)
{
var reg = new RegExp("^[0-9]$");
return (reg.test(fData));
}
利用這則表達(dá)式獲取字符串的長(zhǎng)度
復(fù)制代碼 代碼如下:
function regDataLength(fData)
{
var valLength = fData.length;
var reg = new RegExp("^[\u0391-\uFFE5]$");
var result = 0;
for(i=0; i< valLength; i++)
{
if(reg.test(fData.charAt(i)))
{
result += 2;
}
else
{
result ++;
}
}
return result;
}
應(yīng)用擴(kuò)展判斷是否是數(shù)值
復(fù)制代碼 代碼如下:
function regIsNumber(fData)
{
var reg = new RegExp("^[-]?[0-9]+[\.]?[0-9]+$");
return reg.test(fData)
}
驗(yàn)證Email是否正確
復(fù)制代碼 代碼如下:
function regIsEmail(fData)
{
var reg = new RegExp("^[0-9a-zA-Z]+@[0-9a-zA-Z]+[\.]{1}[0-9a-zA-Z]+[\.]?[0-9a-zA-Z]+$");
return reg.test(fData);
}
判斷手機(jī)號(hào)是否正確
復(fù)制代碼 代碼如下:
function regIsPhone(fData)
{
var reg = /^(\+86)?(1[0-9]{10})$/;
return reg.test(fData);
}
// 判斷輸入是否是一個(gè)由 0-9 / A-Z / a-z 組成的字符串
復(fù)制代碼 代碼如下:
function isalphanumber(str)
{
var result=str.match(/^[a-zA-Z0-9]+$/);
if(result==null) return false;
return true;
}
// 判斷輸入是否是一個(gè)數(shù)字--(數(shù)字包含小數(shù))--
復(fù)制代碼 代碼如下:
function isnumber(str)
{
return !isNaN(str);
}
// 判斷輸入是否是一個(gè)整數(shù)
復(fù)制代碼 代碼如下:
function isint(str)
{
var result=str.match(/^(-|\+)?\d+$/);
if(result==null) return false;
return true;
}
// 判斷輸入是否是有效的長(zhǎng)日期格式 - "YYYY-MM-DD HH:MM:SS" || "YYYY/MM/DD HH:MM:SS"
復(fù)制代碼 代碼如下:
function isdatetime(str)
{
var result=str.match(/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
if(result==null) return false;
var d= new Date(result[1], result[3]-1, result[4], result[5], result[6], result[7]);
return (d.getFullYear()==result[1]&&(d.getMonth()+1)==result[3]&&d.getDate()==result[4]&&d.getHours()==result[5]&&d.getMinutes()==result[6]&&d.getSeconds()==result[7]);
}
// 檢查是否為 YYYY-MM-DD || YYYY/MM/DD 的日期格式
復(fù)制代碼 代碼如下:
function isdate(str){
var result=str.match(/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
if(result==null) return false;
var d=new Date(result[1], result[3]-1, result[4]);
return (d.getFullYear()==result[1] && d.getMonth()+1==result[3] && d.getDate()==result[4]);
}
// 判斷輸入是否是有效的電子郵件
復(fù)制代碼 代碼如下:
function isemail(str)
{
var result=str.match(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/);
if(result==null) return false;
return true;
}
// 去除字符串的首尾的空格
復(fù)制代碼 代碼如下:
function trim(str){
return str.replace(/(^\s*)|(\s*$)/g, "");
}
// 返回字符串的實(shí)際長(zhǎng)度, 一個(gè)漢字算2個(gè)長(zhǎng)度
復(fù)制代碼 代碼如下:
function strlen(str){
return str.replace(/[^\x00-\xff]/g, "**").length;
}
//匹配中國(guó)郵政編碼(6位)
復(fù)制代碼 代碼如下:
function ispostcode(str)
{
var result=str.match(/[1-9]\d{5}(?!\d)/);
if(result==null) return false;
return true;
}
//匹配國(guó)內(nèi)電話號(hào)碼(0511-4405222 或 021-87888822)
復(fù)制代碼 代碼如下:
function istell(str)
{
var result=str.match(/\d{3}-\d{8}|\d{4}-\d{7}/);
if(result==null) return false;
return true;
}
//校驗(yàn)是否為(0-10000)的整數(shù)
復(fù)制代碼 代碼如下:
function isint1(str)
{
var result=str.match(/^[0-9]$|^([1-9])([0-9]){0,3}$|^10000$/);
if(result==null) return false;
return true;
}
//匹配騰訊QQ號(hào)
復(fù)制代碼 代碼如下:
function isqq(str)
{
var result=str.match(/[1-9][0-9]{4,}/);
if(result==null) return false;
return true;
}
//匹配身份證(15位或18位)
復(fù)制代碼 代碼如下:
function isidcard(str)
{
var result=str.match(/\d{15}|\d{18}/);
if(result==null) return false;
return true;
}
//校驗(yàn)文本是否為空
復(fù)制代碼 代碼如下:
function checknull(field,sval)
{
if (field.value =="")
{
alert("請(qǐng)?zhí)顚? + sval + "!");
field.focus();
return false;
}
return true;
}
//屏蔽輸入字符
復(fù)制代碼 代碼如下:
function checkChar()
{
var keycode = event.keyCode;
if(!(keycode>=48&&keycode<=57))
{
return false;
}
}
您可能感興趣的文章:
- javascript 手機(jī)號(hào)碼正則表達(dá)式驗(yàn)證函數(shù)
- js正則函數(shù)match、exec、test、search、replace、split使用介紹集合
- js 正則表達(dá)式之test函數(shù)講解
- JS驗(yàn)證URL函數(shù) 正則
- js 替換功能函數(shù),用正則表達(dá)式解決,js的全部替換
- js正則表達(dá)式之match函數(shù)講解
- JavaScript基于正則表達(dá)式的數(shù)字判斷函數(shù)
- 用正則表達(dá)式判斷字符串是漢字還是拼音的js函數(shù)代碼
- Js 小數(shù)驗(yàn)證函數(shù)代碼(基于正則)
- js正則表達(dá)式之replace函數(shù)用法
- javascript中基于replace函數(shù)的正則表達(dá)式語(yǔ)法
- trim原型函數(shù)看js正則表達(dá)式的性能
- JavaScript常用正則函數(shù)用法示例
相關(guān)文章
eregi_replace與preg_replace 函數(shù)代碼的用法比較
eregi_replace與preg_replace 函數(shù)代碼的用法比較...2007-03-03
你不一定知道的關(guān)于JavaScript的正則表達(dá)式
關(guān)于JavaScript中的正則表達(dá)式——,你不一定知道也可能用不到,但說(shuō)不定哪天就會(huì)遭遇的幾個(gè)事實(shí)【新增一個(gè)】2010-09-09
JS中的正則表達(dá)式及pattern的注意事項(xiàng)
本文給大家介紹js中的正則表達(dá)式的注意事項(xiàng)以及pattern的注意事項(xiàng),需要的小伙伴可以參考下本篇文章2015-10-10

