JS 正規表示式寫一些題目

2021-10-09 12:08:36 字數 1973 閱讀 1652

只是稍微有點接觸,有更好的解法歡迎指點

1.匹配密碼,密碼必須包含數字與字母

var pattern =

/(?![^a-za-z]+$)(?!\d+$)/

;var str =

'1a'

;console.

log(pattern.

test

(str)

);

2.匹配密碼,密碼強度:強,必須包含大寫,小寫和數字,和特殊字元(!,@,#,%,&),且大於6位

var pattern =

/^(?=.*[a-z])(?=.*[a-z])(?=.*\d)(?=.*[!@#%&])[a-za-z0-9!@#%&]$/

;var str =

'%111aaa!@'

;console.

log(pattern.

test

(str)

);

3.匹配email

var pattern =

/^\w+@\w+(\.)\w+$/

;var str =

'[email protected]'

;console.

log(pattern.

test

(str)

);

4.匹配身份證

var pattern =

/^[0-9]([0-9]|x|x)$/

;var str =

'12345678901234567x'

;console.

log(pattern.

test

(str)

);

5.匹配使用者名稱,包含字母或者數字,且8位

var pattern =

/^([a-za-z0-9]|\w|([a-za-z0-9]\w))$/

;var str =

'!!!!!!a_'

;console.

log(pattern.

test

(str)

);

6.匹配ip位址

var pattern =

/^([0-9]|[0-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[0-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[0-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]|[0-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$/

;var str =

'168.0.255.57'

;console.

log(pattern.

test

(str)

);

7.計算乙個字串中所有的數字的和

例如 字串是:『hello90abc 78sjh12.5』 結果是90 + 78 + 12.5 = 180.5

var pattern =

/[^0-9.]/

;var str =

'h12llo90abc 78sjh12.5'

;arr = str.

split

(pattern)

;console.

log(arr)

;var result =0;

for(

var i =

0; i < arr.length; i++

) result += arr[i];}

console.

log(arr)

;console.

log(result)

;

一些正規表示式

要嚴格的驗證手機號碼,必須先要清楚現在已經開放了哪些數字開頭的號碼段,目前國內號碼段分配如下 移動 134 135 136 137 138 139 150 151 157 td 158 159 187 188 聯通 130 131 132 152 155 156 185 186 電信 133 153...

一些正規表示式

判斷是否是正整數if isnan paramvalue paramvalue 0 else 金額的格式判斷輸入金額的要求 整數字最多十位,小數為最多為兩位,可以無小數字 0 9 1 9 0 9 0 9 function checkmoney str 0 9 if re.test str else 手...

一些正規表示式

記錄一下 以防忘記 string hello 123 4567 world this is a regsssss res re.match w s d s d s w string 匹配到 hello 123 4567 world this 其中 代表乙個字串的開始 代表乙個字串的結尾 w 匹配字母...