Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
以下是至少六个字符并包含数字、符号或标点符号的强密码验证之一。
(?x)^(?=.* ( \d | \p{P} | \p{S} )).{6,}
(?=.*之后是什么意思(?x)^?
(?=.*
(?x)^
我知道?=expr 是 Lookahead,它检查后面的文本是否与 expr 匹配。但在这种情况下,只有^一个字符串的开头在前面。
?=
^
用一句话来说:
评论标志已设置 ( (?x))。
(?x)
字符串的开头必须是 ( ^),后面必须是 ( ?=) 零个或多个字符 ( .*),然后是 ( (||)) 数字 ( \d)、标点符号 ( \p{P}) 或符号 ( \p{S})。
.*
(||)
\d
\p{P}
\p{S}
字符串开始后,必须有 6 个或更多的任意字符 ( .{6,})
.{6,}
这能解释吗?