字串結尾之前,所有的字元不能全部由數字([^a-za-z]表示非英文本母,結合下文,這裡匹配數字)組成.
由於當前位置是字串開始,所以表示整個字串不能全是數字.
^(?![^a-za-z]+$)(?!\d+$)[0-9a-za-z]$
^ (?![^a-za-z]+$) (?!\d+$) [0-9a-za-z] $
1. ^
匹配字串開始(或行首)
2. (?![^a-za-z]+$)
斷言 此位置 後,字串結尾之前,所有的字元不能全部由數字([^a-za-z]表示非英文本母,結合下文,這裡匹配數字)組成.
由於當前位置是字串開始,所以表示整個字串不能全是數字.
(?!exp)為零寬斷言,表示斷言之後的內容不能是exp,[^a-za-z]表示非英文本母,+表示可以有多個,$匹配結尾.
3. (?!\d+$)
此處用法和2相同,\d表示非數字,即英文(不是數字,就是英文).
4. [0-9a-za-z]
表示匹配整個字串由 6~35位 數字和字母組成
5. $
匹配字串結束(或行尾)
結論:
這是乙個匹配6~35位由數字和字母混合而成的密碼的正規表示式.
/^[a-za-z_][a-za-z0-9_]$/
/^$/ :完整表示式
^ :表示以什麼開始,或者取反
$ :結束
^[a-za-z_] : 以字母開始,無論大小都可以;
[^a-za-z_] :非字母就可以;
[a-za-z0-9_] :可以是字母數、字下、劃線
:可以包含6到16個字元
.match() //匹配
例如:var username = /^[a-za-z_][a-za-z0-9_]$/;
var name = "a45612fd";
name.match(username);
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...
正規表示式 表示式
網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...
Linux正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...