亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

密碼的正則表達式怎么寫

發布時間:2023-04-07 17:27:48 來源:億速云 閱讀:143 作者:iii 欄目:開發技術

本篇內容主要講解“密碼的正則表達式怎么寫”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“密碼的正則表達式怎么寫”吧!

正則表達式:密碼必須至少包含八個字符、至少包含一個數字、小寫和大寫的字母以及特殊字符

密碼的正則表達式如何來寫?

我需要一個正則表達式來檢查密碼:

密碼至少包含八個字符、至少包含一個數字、同時包含小寫字母和大寫字母以及特殊字符,例如#?!)

不能是舊密碼或包含用戶名,"password""websitename"

這里是我的驗證表達式,用于限制:八個字符,包括一個大寫字母,一個小寫字母和一個數字或特殊字符。

(?=^.{8,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$"

那么,如何寫一個正則,限制密碼必須是八個字符,包括一個大寫字母,一個特殊字符和字母數字字符?

最佳解決思路

至少八個字符,至少一個字母和一個數字:

"^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$"

至少八個字符,至少一個字母,一個數字和一個特殊字符:

"^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%*#?&])[A-Za-z\d$@$!%*#?&]{8,}$"

最少八個字符,至少一個大寫字母,一個小寫字母和一個數字:

"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$"

至少八個字符,至少一個大寫字母,一個小寫字母,一個數字和一個特殊字符:

"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[$@$!%*?&])[A-Za-z\d$@$!%*?&]{8,}"

最少八個最多十個字符,至少一個大寫字母,一個小寫字母,一個數字和一個特殊字符:

"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[$@$!%*?&])[A-Za-z\d$@$!%*?&]{8,10}"

次佳解決思路

可以使用這個正則表達式:

^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$

這個正則表達式將強制執行這些規則:

  • 至少一個大寫字母English letter,(?=.*?[A-Z])

  • 至少一個小寫英文字母,(?=.*?[a-z])

  • 至少有一位數字,(?=.*?[0-9])

  • 至少有一個特殊字符,(?=.*?[#?!@$%^&*-])

  • 最小八個長度.{8,}(帶錨)

第三種解決思路

正則表達式沒有AND運算符,所以編寫匹配有效的密碼的正則表達式相當困難,特別是當有效性被某些東西AND別的東西等定義時...

但是,正則表達式確實有一個OR運算符,所以只需應用DeMorgan的定理,并編寫一個與無效密碼相匹配的正則表達式:

任何少于八個字符或任何沒有數字或任何沒有大寫字母或任何沒有小寫字母或任何沒有特殊字符的任何字符串。

所以:

^(.{0,7}|[^0-9]*|[^A-Z]*|[^a-z]*|[a-zA-Z0-9]*)$

如果能匹配上這個正則表達式的話,這是一個無效的密碼。

第四種思路

對最佳答案的一個小小的改進:由于特殊字符僅限于鍵盤中的特殊字符,因此可用于表達任何特殊字符:

^(?=.*?[A-Z])(?=(.*[a-z]){1,})(?=(.*[\d]){1,})(?=(.*[\W]){1,})(?!.*\s).{8,}$

這個正則表達式將強制執行這些規則:

  • 至少一個大寫英文字母

  • 至少一個小寫英文字母

  • 至少一位數字

  • 至少一個特殊字符

  • 最少八個字符

第五種思路

在我的環境中,按照最佳答案來做,我遇到了一些困難。例如,對字符如;[驗證失敗。我不想白名單列舉我的特殊字符,所以我用[^\w\s]作為測試 - 只是放置匹配非字符(包括數字)和非空格字符。總而言之,這個做法對我來說比較有效...

  • 至少8字符

  • 至少1數字字符

  • 至少1小寫字母

  • 至少1大寫字母

  • 至少1特殊字符

/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[^\w\s]).{8,}$/

JSFiddle Link - 簡單的涵蓋各種情況的demo

第六種思路

導入JavaScript文件jquery.validate.min.js

就可以使用如下方法:

$.validator.addMethod("pwcheck", function (value) {
    return /[\@\#\$\%\^\&\*  \_\+\!]/.test(value) && /[a-z]/.test(value) && /[0-9]/.test(value) && /[A-Z]/.test(value)
});

這個正則表達式可以表達:

  • 至少一張大寫英文字母

  • 至少一個小寫英文字母

  • 至少一位數字

  • 至少一個特殊字符

第七種思路

滿足如下條件:

  • 最少六個字符

  • 至少有一個大寫字符

  • 至少一個小寫字符

  • 至少一個特殊字符

正則表達式:

"/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[$@$!%*?&.])[A-Za-z\d$@$!%*?&.]{6, 20}/"

滿足如下條件,且有可選特殊字符:

  • 至少一個特殊字符

  • 至少一個數字

  • 特殊字符是可選的

  • 最少6個字符,最多16個字符

正則表達式:

"/^(?=.*\d)(?=.*[a-zA-Z]).{6,20}$/"

如果不需要最小和最大條件,可以刪除.{6, 16}

  • 6是最小字符數限制

  • 20是最大字符限制

  • ?=表示匹配表達式

第八種思路

需要滿足的條件,以及對應的正則表達式:

Conditions: 1] Min 1 uppercase letter.
            2] Min 1 lowercase letter.
            3] Min 1 special character.
            4] Min 1 number.
            5] Min 8 characters.
            6] Max 30 characters.

Regex: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[#$@!%&*?])[A-Za-z\d#$@!%&*?]{8,30}$/

第九種思路

根據你的需要,下面這個正則表達式應該能正常工作的:

^(?=(.*\d){1})(.*\S)(?=.*[a-zA-Z\S])[0-9a-zA-Z\S]{8,}

只需創建一個字符串變量,分配模式,并創建一個布爾方法,如果模式匹配正確則返回true,否則返回false。

示例:

String pattern = "^(?=(.*\d){1})(.*\S)(?=.*[a-zA-Z\S])[0-9a-zA-Z\S]{8,}";
String password_string = "Type the password here"

private boolean isValidPassword(String password_string) {
    return password_string.matches(Constants.passwordPattern);
}

第十種思路

試試這個正則表達式:

^.*(?=.{8,})(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=])[a-zA-Z0-9@#$%^&+=]*$

這個正則表達式對我來說非常完美。

function myFunction() {
    var str = "c1TTTTaTTT@";
    var patt = new RegExp("^.*(?=.{8,})(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=])[a-zA-Z0-9@#$%^&+=]*$");
    var res = patt.test(str);
    console.log("Is regular matches:", res);
}

到此,相信大家對“密碼的正則表達式怎么寫”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武穴市| 那曲县| 昌平区| 定陶县| 克什克腾旗| 施甸县| 图片| 平谷区| 政和县| 东丰县| 宁阳县| 台南县| 遵义市| 嘉善县| 琼中| 巴南区| 都安| 青州市| 革吉县| 和林格尔县| 思南县| 乡宁县| 盐边县| 永善县| 四平市| 聂荣县| 灵武市| 房产| 庄河市| 桓台县| 阳新县| 韩城市| 宁南县| 鹤庆县| 丰原市| 昌平区| 册亨县| 田东县| 寿宁县| 中阳县| 茌平县|