一、js正則表達式之replace函數用法:
函數功能:replace函數返回根據正則表達式進行文字替換后的字符串的復制。
函數格式:stringObj.replace(rgExp, replaceText)
參數:字符串stringObj,rgExp正則表達式,replaceText所替換的內容
本模塊涉及的內容包括字符串創建,正則表達式隱式創建對象,創建正則表達式,進行replace方法的使用匹配
示例代碼:
<html> <script language="javascript" type="text/javascript"> //要替換的字符串的內容 var objStr=new String("Designed By Androidyue"); //隱式創建正則表達式對象 var reG=/e/w?/g;//全局匹配(g為全局匹配參數),匹配e或者e?內容 var re=/e/w?/;//沒有指定參數,值進行一次匹配 with(document){ write("進行匹配前的字符串"+objStr+"<br>"); write("進行了全局匹配的字符串"+objStr.replace(reG,"**")+"<br>"); write("進行匹配,沒有指定參數值進行一次匹配"+objStr.replace(re,"××")); } </script> </html>
二、js正則表達式之test函數用法
功能介紹:該方法的返回值是布爾值,通過該值可以匹配字符串中是否存在于正則表達式相匹配的結果,如果有匹配內容,返回ture,如果沒有匹配內容返回false,該方法常用于判斷用戶輸入數據的合法性,比如檢驗Email的合法性
基本語法:
objReg.test(objStr)
objReg 必選項 RegExp對象名稱
objStr 要進行匹配檢測的字符串
示例代碼:
<html> <script language="javascript" type="text/javascript"> /*Designed By Androidyue*/ /* 功能:檢測Email地址的合法性 */ function checkEmail(){ //獲取文本框中用戶輸入Email的信息 var objStr=document.getElementById("email").value; //設置匹配Email的正則表達式 var objReg=//w+[@]{1}/w+[.]/w+/; //document.write(objStr); //如果判斷字符串中是否存在匹配內容,如果存在提示正確信息,否則返回錯誤 if(objReg.test(objStr)){ alert("該Email地址是合法的!"); }else{ alert("該Email地址是非法的!"); } } </script> <body> 請輸入Email地址: <input type="text" id="email"><!--設置Email輸入框--> <input type="button" value="檢測合法性" onclick="checkEmail()"><!--設置按鈕用于出發檢測Email合法性事件--> </body> </html>
三、js正則表達式之match函數用法
函數功能:使用正則表達式模式對字符串執行查找,并將包含查找的結果作為數組返回
函數格式:stringObj.match(rgExp) stringObj為字符串必選 rgExp為正則表達式必選項
返回值:如果能匹配則返回結果數組,如果不能匹配返回null
<html> <script language="javascript" type="text/javascript"> //使用正則表達式模式對字符串執行查找,并將包含查找的結果作為數組返回 var objStr=new String("Yue I love you till the end of my life!"); var re=//wo(/w+)?/g;//該表達式用來匹配一個以/w代表的字符,第二個字符是o,后面有一個字符或者多個字符+表示前面的字符匹配的次數,全局匹配 var arr=objStr.match(re);//調用match方法匹配字符串并且如果存在返回數組,如果沒有結果返回為null document.write("匹配前的字符串:"+objStr+"<br>");//輸出匹配前的字符串 if(arr!=null){//如果能匹配成功即arr數組不為空,循環輸出結果 for(var i=0;i<arr.length;i++){ document.write("<li>"+arr[i]); } } </script> </html>
四、js正則表達式之search方法講解
功能:返回與正則表達式查找內容匹配的第一個子字符串的位置
語法:stringObj.search(rgExp) stringObj 必選項 rgExp正則表達式
返回值:search 方法指明是否存在相應的匹配。如果找到一個匹配,search方法將返回一個整數值,指明這個匹配距離字符串開始的偏移位置。如果沒有找到匹配,則返回 -1
<html> <script language="javascript" type="text/javascript"> //search 方法指明是否存在相應的匹配。如果找到一個匹配,search 方法將返回一個整數值,指明這個匹配距離字符串開始的偏移位置。如果沒有找到匹配,則返回 -1 var re=/(/d)(/d)/d/2/1/;//設置正則表達式 var ostr="11010111";//所要匹配的字符串,字符串第一個位置從0開始 var pos=ostr.search(re);//進行字符串匹配 if(pos==-1){//如果沒有找到匹配 document.write("沒有找到任何匹配"); } else{ arr=ostr.match(re);//進行match找出匹配的內容 document.write("在"+pos+"找到第一個匹配,匹配內容為:"); document.write(arr[0]);//輸出匹配的內容 } </script> </html>
五、js正則表達式之exec方法講解
功能說明:該函數通過對指定你的字符串進行一次匹配檢測,獲取字符串中的第一個與正則表達式的內容,并且將匹配的內容和子匹配的結果存放在返回數組中。
基本方法:
objReg.exec(string)
objReg,RegExp對象的名稱
string,要進行匹配的字符串
<html> <script language="javascript" type="text/javascript"> //設置匹配的字符串 var objStr="我的手機號13522222222,他的手機號13288888888,她的手機號碼13699999999"; //設置正則表達式,匹配以13開頭11位字符串,全局匹配 var reg=/13(/d)(/d{8})/g; //執行exec函數,盡管是全局匹配的正則表達式,但是exec方法只對指定的字符串進行一次匹配,獲取字符串中第一個與正則表達式想匹配的內容,并且將匹配內容和子匹配的結果存儲到返回的數組中 var arr=reg.exec(objStr); //循環輸出結果 for(var i=0;i<arr.length;i++){ document.write("<li>"+arr[i]+"<br>"); } </script> </html>
以上就是為大家分享的五個常用函數的使用方法,內容很詳細,包括test、exec、match、replace、search,希望對大家學習掌握js正則表達式有所幫助。