實(shí)現(xiàn)的要求如下:
- 純數(shù)字
- 5-7位之間
- 前三位相同
- 從第四位開始連續(xù)
如下面的例子:
11123 #正確
22234 #正確
33345 #正確
333456 #正確
2223456 #正確
0001234 #正確
00012345 #錯(cuò)誤:此行長度超標(biāo)
000234 #錯(cuò)誤:第3位與第4位不連續(xù)
111235 #錯(cuò)誤:第5位和第6位不連續(xù)
1、匹配三位相同數(shù)字
2、匹配連續(xù)數(shù)字
匹配連續(xù)數(shù)字可以通過零寬斷言來匹配,當(dāng)然也沒什么好辦法,只能通過列舉,如下兩行都可以匹配3位連續(xù)數(shù)字
(0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){2}\d
\d((?=0)1|(?=1)2|(?=2)3|(?=3)4|(?=4)5|(?=5)6|(?=6)7|(?=7)8|(?=8)9){2}
說明: 第一行采用正向零寬斷言,第二行采用反向零寬斷言
想了解更多關(guān)于正則表達(dá)式零寬斷言的知識(shí)可以點(diǎn)擊這里
結(jié)論
集合本題中的要求,由于要求相同前三,并且后面連續(xù)從第三位開始,完成正則如下:
^(\d)\1{2}((?=(0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)))\d){2,4}$
^(\d)\1{2}((?=0)1|(?=1)2|(?=2)3|(?=3)4|(?=4)5|(?=5)6|(?=6)7|(?=7)8|(?=8)9){2,4}$
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家學(xué)習(xí)或者使用正則表達(dá)式能帶來一定的幫助,如果有疑問大家可以留言交流。
您可能感興趣的文章:- iOS 正則表達(dá)式判斷純數(shù)字及匹配11位手機(jī)號(hào)碼的方法
- jquery 正整數(shù)數(shù)字校驗(yàn)正則表達(dá)式
- JS判斷輸入的字符串是否是數(shù)字的方法(正則表達(dá)式)
- JS正則表達(dá)式匹配檢測(cè)各種數(shù)值類型(數(shù)字驗(yàn)證)
- jQuery使用正則表達(dá)式限制文本框只能輸入數(shù)字
- 最新密碼驗(yàn)證正則表達(dá)式
- Javascript校驗(yàn)密碼復(fù)雜度的正則表達(dá)式
- 正則表達(dá)式匹配用戶密碼
- 正則表達(dá)式限制 賬號(hào) 密碼 郵箱 身份證 手機(jī)號(hào)的相關(guān)代碼
- python使用正則表達(dá)式檢測(cè)密碼強(qiáng)度源碼分享
- php password密碼驗(yàn)證正則表達(dá)式(8位長度限制)
- 淺析一個(gè)匹配數(shù)字和字母密碼的正則表達(dá)式