正则表达式允许任何字符,但需要使用javascript只接受整个文本框的单个空格

时间:2014-06-14 05:31:11

标签: javascript regex

我正在尝试验证一个需要接受任何字符的文本框,但是只需要为整个文本框字段接受单个空格,而不是以空白字符开头。

示例:

"wall heel" & "wall " & "wall"

我在这里发布我的代码:

var alpha = (/^\w+ +\w*$/)||(/^\w*$/);

注意:此处仅接受"wall heel"等字符,但不接受"wall"

请为我推荐一些代码。

4 个答案:

答案 0 :(得分:3)

我认为这对你来说很有把戏

/^[^ ]+(?: [^ ]+)?$/

See it here on regex101

enter image description here

答案 1 :(得分:1)

使用此模式^[^ ](?!(.*? ){2}).*$
Demo

  • ^[^ ]以非空格字符开头。
  • (?!否定前瞻。
  • (.*? ){2}两个空格
  • )前瞻
  • .*$后面跟着任何事情到最后

答案 2 :(得分:0)

确保它为空,或者不以空格开头并且空格少于2个。

var valid = (s == "" || (s[0] != " " && s.split(" ").length < 2));

答案 3 :(得分:0)

使用此正则表达式

/^[^\s]+([\s]([^\s]+)?)?$/

这将匹配除以下所有内容:

  • 开头的空格(空格,制表符,新行等)
  • 总共超过1个空格。