正則表達(dá)式不包含(正則表達(dá)式大全)
正則表達(dá)式不管是做哪方面開發(fā)的朋友都會(huì)使用到,但是有好多人不太懂正則正則表達(dá)式,又因?yàn)橛玫念l率比較低的緣故又懶得去看,用的時(shí)候就直接到網(wǎng)上找一下,但經(jīng)常在網(wǎng)上去找很久,結(jié)果也不一定跟需要的符合。今天我把咱們經(jīng)常用到的一點(diǎn)先放上來,如果那些用的多的在慢慢添加更新。
數(shù)字的正則
1、純數(shù)字正則:^[0-9]*$
2、 有n位的數(shù)字正則:^\d{n}$
3、至少有n位數(shù)字的正則:^\d{n,}$
4、位數(shù)在m-n位之間的正則:^\d{m,n}$
5、匹配整數(shù)(不區(qū)分正負(fù)數(shù)):^-?[1-9]d*$
6、匹配負(fù)整數(shù):^-[1-9]d*$
字符串的正則
1、純英文字母的正則(不區(qū)分大小寫):^[A-Za-z]+$
2、純英文大寫字母的正則:^[A-Z]+$
3、純英文小寫字母的正則:^[a-z]+$
4、只有數(shù)字和26個(gè)英文字母的正則:^[A-Za-z0-9]+$
5、字符長(zhǎng)度為在m-n位之間的正則:^.{m,n}$
6、以字母開頭,長(zhǎng)度在6~18之間,只能包含字母、數(shù)字和下劃線:^[a-zA-Z]\w{5,17}$
7、以字母開頭,長(zhǎng)度在6~18之間,只能包含字母、數(shù)字不包含下劃線:^[a-zA-Z][a-zA-Z0-9]{4,15}$
8、必須且只能包含數(shù)字和字母的正則:^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,10}$
以這個(gè)為例稍微說一下
^ 表示一行的開始位置
(?![0-9]+$) 表示不全是數(shù)字
(?![a-zA-Z]+$) 表示不全是字母
[0-9A-Za-z] {6,10} 表示由6-10位數(shù)字或這字母組成
$ 匹配行結(jié)尾位置
這個(gè)三個(gè)條件決定了這個(gè)表達(dá)式 是必須包含數(shù)字和字母 其只能包含數(shù)字和字母 并且字符長(zhǎng)度位數(shù)是在6-10位之間。
9、身份證號(hào)(只驗(yàn)證了15位或18位數(shù)字)正則:^d{15}|d{18}$
稍微講解一下規(guī)則(可以跟上面的實(shí)例相互驗(yàn)證,加強(qiáng)理解)
\w:表示的是數(shù)字、字母及下劃線。
\d:表示的只是數(shù)字。
^:字符串的開始位置。如果是在[ ]里面的話則表示“非”的意思,就是排除掉[ ]里面包含的內(nèi)容
^n:表示必須以 n字符串 開頭。
$:字符串的結(jié)束位置。
?=n:表示后面緊接著跟著字符串 n 。
?!n:表示其后不是緊接跟著字符串 n 。
今天先寫這些明天還會(huì)繼續(xù)補(bǔ)充一下其他的,