正则表达式代码只允许一个空格

时间:2016-05-19 14:33:14

标签: javascript regex string whitespace

我有这个正则表达式(^[a-z]\s{1})+。它应该只匹配由单个空格分隔的字母,但即使使用此输入它仍然返回true:

"a a    a"

如果它有两个连续的空格,我希望它拒绝该表达式。 你能救我吗?

1 个答案:

答案 0 :(得分:1)

这是一个修复此问题的正则表达式:^\s*([a-z]\s|[a-z]$)+\s*$

<强>解释

  • 它匹配到最后的字符串($),因此它将丢弃您的示例行
  • 它匹配字符串以字母结尾的情况 - [a-z]$
  • 忽略前导和尾随空格:\s*在开头和结尾

您可以使用此here