Javascript正则表达式 - 必填字段验证

时间:2008-11-20 06:34:18

标签: javascript validation

如何使用javascript RegExp检查字段(文本框)是空的还是仅填充空格(空格/输入/制表符等)?

4 个答案:

答案 0 :(得分:12)

if (myField.value.match(/\S/)) {
  // field is not empty
}
// or
if (/\S/.test(myField.value)) {
  // field is not empty
}

解释,因为其他人似乎有一些 crazy 不同的想法:

\s将匹配空格,制表符或新行 \S将匹配除空格,制表符或新行之外的任何内容 如果你的字符串有一个不是空格,制表符或新行的单个字符,那么它就不是空的 因此,您只需搜索一个字符:\S

答案 1 :(得分:5)

/^\s*$/.test(string)

可以像这样使用:

var empty_string = /^\s*$/; //create RegExp object for re-use

if (empty_string.test(myFormField.value))
{
  alert("Please be a bit more elaborate!");
}

答案 2 :(得分:1)

答案 3 :(得分:0)

通过测试

/\s/ or /\S/
你只会测试一个角色。因此,最好测试一下:

/^\s+$/ or /^\S+$/

编辑:请注意不是代码的一部分。

EDIT2:

匹配测试:


if(string.match(/^\s+$/)) {
   alert("string is empty!");
}

不匹配的测试:


if(!string.match(/^\S+$/)) {
   alert("string is empty!");
}

你可以使用其中任何一个来获得相同的结果。