隨著互聯(lián)網(wǎng)的不斷完善,程序員在寫(xiě)函數(shù)代碼的時(shí)候可能會(huì)出現(xiàn)一些需要解決的問(wèn)題,今天錯(cuò)新技術(shù)頻道小編特意為大家準(zhǔn)備了簡(jiǎn)述JavaScript之正則表達(dá)式的驗(yàn)證函數(shù)代碼,感興趣的朋友一起進(jìn)入下文看看吧!
利用正則表達(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)電話(huà)號(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í)顚?xiě)" + sval + "!");
field.focus();
return false;
}
return true;
}
?
//屏蔽輸入字符
?
?
?
?
function checkChar()
{
var keycode = event.keyCode;
if(!(keycode>=48&&keycode<=57))
{
return false;
}
}
簡(jiǎn)述JavaScript之正則表達(dá)式的驗(yàn)證函數(shù)代碼,錯(cuò)新技術(shù)頻道小編已經(jīng)在上文為各位朋友們作出了解答,上文的內(nèi)容有沒(méi)有讓大家學(xué)習(xí)這方面有心得呢?大家可以在自己的電腦操作一遍。