正则表达式中不能出现多余空格!!!
今天在做廖雪峰网站练习题的时候想用正则表达式判断字符串,最后发现是在逗号后用了多余的空格,以此博客来记录😄
练习:
判断用户名是否符合规则,即要包含3-10个英文或数字
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<form id="test-register" action="#" target="_blank" onsubmit="return checkRegisterForm()">
<p id="test-error" style="color:red"></p>
<p>
用户名: <input type="text" id="username" name="username">
</p>
<p>
口令: <input type="password" id="password" name="password">
</p>
<p>
重复口令: <input type="password" id="password-2">
</p>
<p>
<button type="submit">提交</button> <button type="reset">重置</button>
</p>
</form>
<script>
let username = document.getElementById('username');
let nameReg = /\w{3,10}/
if (nameReg.test(username.value) === false) {
console.log(username.value)
alert('用户名错误');
return false;
}
return true;
</script>
</body>
</html>
如果变量nameReg的值为/\w{3, 10}/
,逗号后多了一个空格,将导致匹配不成功。