这是我目前的正则表达式检查:
const validPassword = (password) => password.match(/^(?=.*\d)(?=.\S)(?=.*[a-zA-Z]).{6,}$/);
我检查了至少1个字母和1个数字以及至少6个字符。但是我也想确保字符串中的任何地方都没有空格。
在这里找到了这个答案,但由于某种原因,在我的代码中它已经过去了。
What is the regular expression for matching that contains no white space in between text?
答案 0 :(得分:5)
似乎你需要
/^(?=.*\d)(?=.*[a-zA-Z])\S{6,}$/
<强>详情
^
- 字符串开头(?=.*\d)
- 1位数(至少)(?=.*[a-zA-Z])
- 至少1个字母\S{6,}
- 6个或更多非空白字符$
- 字符串锚点结束考虑到principle of contrast,您可以将模式修改为
/^(?=\D*\d)(?=[^a-zA-Z]*[a-zA-Z])\S{6,}$/