我需要满足以下条件的电话号码验证。我有单独的代码。但我发现很难 结合正则表达式。
1.整个电话号码可以是64个字符。
电话号码的第2.1个字符可以是+或0。
电话号码的第3个,第3个,第4个字符可以是(或)或 - 或空格或0到9的数字。
请指导。谢谢。
var num1 = /^[\+0]$/; // first character 0 or +
var num2 = /^\d(?: ?\d+)*$/; // space
var num3 = /^\d{0,64}$/; // 64 character long
答案 0 :(得分:1)
你真的可以解决一下这个问题。
<form action="/login" method="post">
<div>
<label>Username:</label>
<input type="text" name="username"/><br/>
</div>
<div>
<label>Password:</label>
<input type="password" name="password"/>
</div>
<div>
<input type="submit" value="Submit"/>
</div>
</form>
function test_example () {
let input = document.getElementById("example").value
if (input.length <= 64)
{
if (input[0] !== "+" && input[0] !== "0")
{
console.log("first false")
return false
}
let second = input.substring(1, 5)
if (!second.match(/^[0-9() ]+$/))
{
console.log("second false")
return false
}
let third = input.substring(5)
console.log(third)
if (!third.match(/^[A-z0-9()*# -]+$/))
{
console.log("third false")
return false
}
console.log("okay")
return true
}
}