Javascript常用字符串判斷函數(shù)代碼分享
具體的解釋查看注釋吧,這里就不多廢話了,直接上代碼:
/*
function obj$(id) 根據(jù)id得到對(duì)象
function val$(id) 根據(jù)id得到對(duì)象的值
function trim(str) 刪除左邊和右邊空格
function ltrim(str) 刪除左邊空格
function rtrim (str) 刪除右邊空格
function isEmpty(str) 字串是否有值
function equals(str1, str2) js判斷比較兩字符串是否相等
function equalsIgnoreCase(str1, str2) js判斷忽略大小寫(xiě)比較兩個(gè)字符串是否相等
function isChinese(str) js判斷判斷是否中文
function isEmail(strEmail) js判斷是否電子郵件
function isImg(str) js判斷是否是一個(gè)圖片格式的文件jpg|jpeg|swf|gif
function isInteger(str) js判斷是否是一個(gè)整數(shù)
function isFloat js判斷是否是一個(gè)浮點(diǎn)數(shù)
function isPost(str) js判斷是否郵編(1位至6位
function isMobile(str) js判斷是否是手機(jī)號(hào)
function isPhone(str) js判斷是否是電話號(hào)碼必須包含區(qū)號(hào),可以含有分機(jī)號(hào)
function isQQ(str) js判斷是否合法的QQ號(hào)碼
function isIP(str) js判斷是否是合法的IP
function isDate(str) js判斷是否日期類型(例:2005-12-12)
function isIdCardNo(idNumber) js判斷是否是合法的身份證號(hào)
*/
function obj$(id)
{
return document.getElementById(id);
}
function val$(id)
{
var obj = document.getElementById(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;
}
常見(jiàn)的字符串判斷的函數(shù)基本上都涵蓋在內(nèi)了,小伙伴們根據(jù)自己的項(xiàng)目需求自由選擇吧,如有遺漏的,還請(qǐng)給我留言,本文持續(xù)更新。
- JavaScript中字符串分割函數(shù)split用法實(shí)例
- JavaScript使用replace函數(shù)替換字符串的方法
- JavaScript通過(guò)字符串調(diào)用函數(shù)的實(shí)現(xiàn)方法
- JavaScript截取字符串的2個(gè)函數(shù)介紹
- javascript自定義函數(shù)參數(shù)傳遞為字符串格式
- JavaScript字符串插入、刪除、替換函數(shù)使用示例
- JavaScript substr() 字符串截取函數(shù)使用詳解
- JavaScript 字符串處理函數(shù)使用小結(jié)
- 對(duì)字符串進(jìn)行HTML編碼和解碼的JavaScript函數(shù)
- JavaScript中常見(jiàn)的字符串操作函數(shù)及用法匯總
相關(guān)文章
JavaScript function 的 length 屬性使用介紹
函數(shù)的 length 得到的是形參個(gè)數(shù),如果函數(shù)內(nèi)部是通過(guò)arguments 調(diào)用參數(shù),而沒(méi)有實(shí)際定義參數(shù)的話, length 只會(huì)的得到02014-09-09js 實(shí)現(xiàn)在離開(kāi)頁(yè)面時(shí)提醒未保存的信息(減少用戶重復(fù)操作)
在離開(kāi)頁(yè)面時(shí)判斷是否有未保存的輸入值,然后進(jìn)行提醒,接下來(lái)介紹實(shí)現(xiàn)步驟,感興趣的朋友可以了解下2013-01-01Javascript實(shí)現(xiàn)運(yùn)算符重載詳解
本文給大家匯總介紹了Javascript實(shí)現(xiàn)運(yùn)算符重載的方法,實(shí)現(xiàn)的思路很簡(jiǎn)單,有需要的小伙伴可以來(lái)看看2018-04-04詳解JavaScript的懶加載是如何實(shí)現(xiàn)的
懶加載(Lazy Loading)是一種在軟件開(kāi)發(fā)中常用的優(yōu)化技術(shù),它主要用于延遲加載資源,直到真正需要使用的時(shí)候才進(jìn)行加載,這樣可以減少初始加載的時(shí)間和資源消耗,并提升用戶體驗(yàn),本文給大家詳細(xì)介紹了JavaScript的懶加載是如何實(shí)現(xiàn)的,需要的朋友可以參考下2024-01-01JS實(shí)現(xiàn)簡(jiǎn)潔、全兼容的拖動(dòng)層實(shí)例
這篇文章主要介紹了JS實(shí)現(xiàn)簡(jiǎn)潔、全兼容的拖動(dòng)層的方法,實(shí)例分析了javascript鼠標(biāo)事件及頁(yè)面元素的操作技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-05-05JS 使用 window對(duì)象的print方法實(shí)現(xiàn)分頁(yè)打印功能
這篇文章主要介紹了JS 使用 window對(duì)象的print方法實(shí)現(xiàn)分頁(yè)打印功能,這種方法兼容性比較好,在ie和火狐瀏覽器下都可以正常使用,感興趣的朋友跟隨腳本之家小編一起看看吧2018-05-05JavaScript實(shí)現(xiàn)五子棋游戲的方法詳解
這篇文章主要介紹了JavaScript實(shí)現(xiàn)五子棋游戲的方法,結(jié)合實(shí)例形式詳細(xì)分析了javascript實(shí)現(xiàn)五子棋游戲的具體步驟、原理與相關(guān)操作技巧,需要的朋友可以參考下2019-07-07js簡(jiǎn)單網(wǎng)速測(cè)試方法完整實(shí)例
這篇文章主要介紹了js簡(jiǎn)單網(wǎng)速測(cè)試方法,以完整實(shí)例形式分析了JavaScript基于網(wǎng)頁(yè)圖片下載進(jìn)行測(cè)試網(wǎng)速的實(shí)現(xiàn)技巧,需要的朋友可以參考下2015-12-12