關(guān)于正則的試用驗證身份證 年齡 郵箱 手機(jī) 替換*號

1.將手機(jī)號的4大7位替換成*:
使用replace()方法代碼如下:

// 匹配手機(jī)號首尾,以類似“123****8901”的形式輸出
'12345678901'.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2');

此段正則匹配字符串中的連續(xù)11位數(shù)字,替換中間4位為*號,輸出常見的隱匿手機(jī)號的格式。
如果要僅得到末尾4位,則可以改成如下形式:

// 匹配連續(xù)11位數(shù)字,并替換其中的前7位為*號
'15110280327'.replace(/\d{7}(\d{4})/, '*******$1');

補(bǔ)充注釋:正則表達(dá)式中的括號即可用于分組,同時也用于定義子模式串,在replace()方法中,參數(shù)二中可以使用$n(n為數(shù)字)來依次引用模式串中用括號定義的字串。

2.正則手機(jī)號驗證:

/**
 * 驗證手機(jī)號碼
 * 
 * 移動號碼段:139、138、137、136、135、134、150、151、152、157、158、159、182、183、187、188、147
 * 聯(lián)通號碼段:130、131、132、136、185、186、145
 * 電信號碼段:133、153、180、189
 * 
 * @param cellphone
 * @return
 */
public static boolean checkCellphone(String cellphone) {
String regex = "^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,5-9]))\\d{8}$"; 
return check(cellphone, regex);
}
 
/**
 * 驗證固話號碼
 * 
 * @param telephone
 * @return
 */
public static boolean checkTelephone(String telephone) {
String regex = "^(0\\d{2}-\\d{8}(-\\d{1,4})?)|(0\\d{3}-\\d{7,8}(-\\d{1,4})?)$";
return check(telephone, regex);
}

還有一種簡單的寫法:

/^1[3|4|5|8][0-9]\d{8}$/

^1代表以1開頭,現(xiàn)在中國的手機(jī)號沒有是其它開頭的,以后不一定啊
[3|4|5|8] 緊跟上面的1后面,可以是3或4或5或8的一個數(shù)字,如果以后出現(xiàn)190開始的手機(jī)號碼了,就需要如下[3|4|5|8|9]
[0-9]表示0-9中間的任何數(shù)字,可以是0或9
\d{4,8} 這個\d跟[0-9]意思一樣,都是0-9中間的數(shù)字, {4,8}為4到8位, {8}為8位數(shù)字

3.正則驗證身份證:

var checkId = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;


function isCardNo(card)  
{  
   // 身份證號碼為15位或者18位,15位時全為數(shù)字,18位前17位為數(shù)字,最后一位是校驗位,可能為數(shù)字或字符X  
   var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;  
   if(!reg.test(card) )  
   {  
       alert("身份證輸入不合法");  
       return  false;  
   }  
}  

4.正則驗證郵箱格式
第一種:比較簡單,容易理解

var checkEmail = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/;

解釋一下這對代碼:
開始必須是大(A-Z)小(a-z)寫字母和數(shù)字(0-9)和下劃線()和橫杠(-), + 代表匹配1到多次,然后是@, 后邊是任意字符 后邊是 . 和任意字符, 比較簡單, 值匹配最基本的郵箱格式
適用于這幾種情況:
1、純數(shù)字
比如:123456@jb51.net
2、純字母
3、字母數(shù)字混合
4、帶點的
比如:web.blue@jb51.net
5、帶下劃線
比如:web_blue@jb51.net
6、帶連接線
比如:web-blue@jb51.net
第二種: 第一種方式不支持的嚴(yán)重情況:在開頭和結(jié)尾出現(xiàn)特殊字符 '
'

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 初衷:看了很多視頻、文章,最后卻通通忘記了,別人的知識依舊是別人的,自己卻什么都沒獲得。此系列文章旨在加深自己的印...
    DCbryant閱讀 4,257評論 0 20
  • 文章轉(zhuǎn)載地址: http://www.open-open.com/code/view/1430625516632 ...
    得起一個清新脫俗的名字閱讀 2,290評論 1 3
  • 正則表達(dá)式全部符號解釋(轉(zhuǎn)) 常用正則表達(dá)式大全 (轉(zhuǎn)) 不錯的正則博客 正則的方法 var reg = /[1-...
    me__me11閱讀 1,128評論 0 0
  • 正則表達(dá)式到底是什么東西?字符是計算機(jī)軟件處理文字時最基本的單位,可能是字母,數(shù)字,標(biāo)點符號,空格,換行符,漢字等...
    獅子挽歌閱讀 2,287評論 0 9
  • tags: 正則表達(dá)式categories: JavaScript歡迎點擊我的博客原文 前端會遇到很多字符串驗證問...
    淺茉Sara閱讀 841評論 1 2

友情鏈接更多精彩內(nèi)容