我正在对我的新项目进行一些密码验证。我有这些规则,我想使用 php preg_match() 函数在正则表达式模式上进行转换:
- 接受所有字符。
- 除了空格。
- 最少 4 个字符。
- 最多 20 个字符。
提前谢谢你!
试试这个
(?s)^(\S{4,20})$
解释
"(?s)" + // Match the remainder of the regex with the options: dot matches newline (s)
"^" + // Assert position at the beginning of the string
"(" + // Match the regular expression below and capture its match into backreference number 1
"\\S" + // Match a single character that is a “non-whitespace character”
"{4,20}" + // Between 4 and 20 times, as many times as possible, giving back as needed (greedy)
")" +
"$" // Assert position at the end of the string (or before the line break at the end of the string, if any)