我尝试过很多正则表达式,但它仍然无效。请告诉我可能出错的地方:
myArray = str.replace(/\s+/g,"").split(""); //remove any spaces if
present & split each character
if(/^[0-9]/.test(myArray))
console.log("Make sure you enter all number");
else
console.log("Successful");
如果在输入(str)之后给出输出:
455e5 7523 1455 - > “确保输入所有数字”
4555 2375 2358 - > “确保输入所有数字”而不是“成功”
我尝试了/^[0-9]+/
,/^\d+$/
,/(^\d)*/
以及许多类似的表达方式。它没有帮助我。
是因为split()
因为我已将其删除并尝试过。
答案 0 :(得分:0)
使用if(/\D/.test(myArray))
console.log("Make sure you enter all number");
else
console.log("Successful");
匹配非数字字符
function test(myArray) {
if (/\D/.test(myArray.replace(/\s+/g,"")))
console.log("Make sure you enter all number");
else
console.log("Successful");
}
DEMO:
<input oninput="test(this.value)" />
&#13;
[^\d\s]
&#13;
或者您可以使用function test(myArray) {
if (/[^\d\s]/.test(myArray))
console.log("Make sure you enter all number");
else
console.log("Successful");
}
来匹配除数字和空格之外的字符
<input oninput="test(this.value)" />
&#13;
{{1}}&#13;