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