\A(?=\S*?[A-Z])(?=\S*?[a-z])(?=\S*?[0-9])\S{6,}\z
(這來自JGSoft正則表達式的味道)。任何人都可以請解釋這個密碼複雜性正則表達式給我?
基本上,這個正則表達式的目的是這樣的:「密碼複雜 測試是否輸入由6個或更多字符 輸入必須包含至少一個大寫字母,一個小寫字母和一個數字。」。
因此,可以按任意順序放置三個組(第一個大寫字母,然後是非首字母,然後是數字)。 \ A匹配字符串的開頭,\ z匹配字符串的結尾。我對(?=部分)感到困惑,它應該是一個積極的向前看,我不明白這個正則表達式是如何讓你按任意順序輸入密碼字符的,