regex Javascript正则表达式不允许超过1个连续空格

lb3vh1jj  于 2022-11-18  发布在  Java
关注(0)|答案(3)|浏览(133)

我想做一个不允许超过1个连续空格的正则表达式。
例如:

  • A Bb 7有效
  • AA O无效
  • 00 55有效
  • A b无效
a14dhokn

a14dhokn1#

在这里你可以试试这个逻辑:

let str = "apple mango pine";

let result = str.match(/ {2,}/g);

if (result) {
  console.log("two consecutive spaces are not allowed");
} else console.log("valid");
lp0sw83n

lp0sw83n2#

根据您的具体需求,我可以提供两种版本:
这只适用于“空格”字符,但不考虑Unicode中的其他空格字符:

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

这考虑到了正则表达式中的空格字符,所以也使用换行符、制表符等作为“空格”:

^\S*(?:\s\S+)*\s?$

两个正则表达式在找到有效输入时匹配。

ckx4rj1h

ckx4rj1h3#

是什么让你认为你需要一个正则表达式?

if (string.includes('  '))
    alert('error!')

相关问题