第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

正則表達式(帶正則的四選三邏輯)

正則表達式(帶正則的四選三邏輯)

烙印99 2022-06-16 10:34:58
密碼要求:密碼必須包含大寫字母、小寫字母、數(shù)字和特殊字符三種類型,長度在8-30個字符之間。密碼不能包含“管理員”字符串我寫的規(guī)律/^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z._~!@#$^&*]+$)(?![a-z0-9]+$)(?![a-z._~!@#$^&*]+$)(?![0-9._~!@#$^&*]+$)[a-zA-Z0-9._~!@#$^&*]{8,20}$/ 顯然錯了。不知道怎么用正則描述四選三的邏輯。需要幫助。
查看完整描述

2 回答

?
浮云間

TA貢獻1829條經(jīng)驗 獲得超4個贊

不要為此使用單個正則表達式,這太復雜了,因為您必須寫出 4 個選項的每個可能的 3 組合,并在每個組合之間交替使用|. 將每個測試拆分為一個正則表達式,然后以編程方式檢查有多少測試通過:


const test = (str) => {

  const hasUpper = /[A-Z]/.test(str);

  const hasLower = /[a-z]/.test(str);

  const hasNumbers = /\d/.test(str);

  const hasSpecial = /[._~!@#$^&*]/.test(str);

  if (hasUpper + hasLower + hasNumbers + hasSpecial < 3) {

    return false;

  }

  if (str.toLowerCase().includes('administrator')) {

    return false;

  }

  return str.length >= 8 && str.length <= 30;

};

如果您還想確保字符串中不存在除描述之外的字符,那么:


const hasOther = /[^a-z\d._~!@#$^&*]/i.test(str);

if (hasOther) {

  return false;

}


查看完整回答
反對 回復 2022-06-16
?
繁星淼淼

TA貢獻1775條經(jīng)驗 獲得超11個贊

let reg =/^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\W_!@#$%^&*`~()-+=]+$)(?![a-z0-9]+$)(?![a-z\W_!@#$%^&*`~()-+=]+$)(?![0-9\W_!@#$%^&*`~()-+=]+$)[a-zA-Z0-9\W_!@#$%^&*`~()-+=]{8,30}$/;

if(!reg.test(str) || str.toLowerCase().includes('administrator')){

  return false;

}


查看完整回答
反對 回復 2022-06-16
  • 2 回答
  • 0 關注
  • 253 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號