js正則表達式要求:
1. 必須包含數字、英文字母、特殊符號且大于等于8位
2. 特殊符號包括: [email protected]#$" />

JS正則表達式必須包含數字、字母、特殊字符

 更新時間:2019-09-09 03:01:01   作者:佚名   我要評論(0)

下面給大家介紹下JS正則表達式 必須包含數字、字母、特殊字符
js正則表達式要求:
1. 必須包含數字、英文字母、特殊符號且大于等于8位
2. 特殊符號包括: [email protected]#$

下面給大家介紹下JS正則表達式 必須包含數字、字母、特殊字符

js正則表達式要求:

1. 必須包含數字、英文字母、特殊符號且大于等于8位

2. 特殊符號包括: [email protected]#$%^&*

正則表達式如下:

/^(?=.*\d)(?=.*[a-zA-Z])(?=.*[[email protected]#$%^&*])[\[email protected]#$%^&*]{8,}$/

解釋:

這里主要用到了js正則表式中的正向前瞻 ?=,舉個例子

/\d/.exec( 'abc2abc' ) 匹配結果為2,釋義:匹配一個數字

/\d(?=a)/.exec( 'abc2abc' ) 匹配結果為2,釋義:匹配一個數字,但是這個數字后面必須跟著字母a

/\d(?=a)/.exec( 'abc2bc' ) 匹配結果為null

由此可以看出,?= 匹配結果中不包含它所匹配的字符,但是待匹配字符串必須符合它所對應的規則

當有多個正向前瞻規則時它們是并列的,不是串行的,比如

/\d(?=a)(?=b)/.exec( 'abc2abc' ) 匹配結果為null,那如果想匹配一個數字,后面必須跟著字母a和b可以這樣寫

/\d(?=a)(?=.b)/.exec( 'abc2abc' ),當然這是為了演示它的規則,其實可以這樣寫/\d(?=ab)/.exec( 'abc2abc' )

對于/^(?=.*\d)(?=.*[a-zA-Z])(?=.*[[email protected]#$%^&*])[\[email protected]#$%^&*]{8,}$/

其實整個正則表示可以分為三部分:

/^(?=.*\d)[\[email protected]#$%^&*]{8,}$/  
/^(?=.*[a-zA-Z])[\[email protected]#$%^&*]{8,}$/
/^(?=.*[[email protected]#$%^&*])[\[email protected]#$%^&*]{8,}$/

待匹配字符串必須同時符合這三部分才可以

知識點擴展:

js 正則表達式 匹配除漢字,字母,數字,逗號,句號外的特殊字符(用來規范輸入內容)

/[^\u4e00-\u9fa5a-zA-Z\d,\.,。]+/ 

其中\u4e00-\u9fa5匹配漢字,a-zA-Z匹配字母,\d匹配數字,,.,。匹配逗號和句號,^表示非,+表示盡可能多的匹配。

總結

以上所述是小編給大家介紹的JS正則表達式必須包含數字、字母、特殊字符,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

您可能感興趣的文章:

  • JS正則表達式獲取指定字符之后指定字符之前的字符串(推薦)
  • Js中使用正則表達式驗證輸入是否有特殊字符
  • js正則表達式校驗指定字符串的方法
  • JS正則表達式驗證中文字符
  • JavaScript正則表達式替換字符串中圖片地址(img src)的方法
  • JavaScript利用正則表達式替換字符串中的內容
  • JS判斷輸入的字符串是否是數字的方法(正則表達式)
  • String字符串匹配javascript 正則表達式

相關文章

最新評論

黑龙江新11选5开奖结果