imask:无法移除连续的空格

  • 本文关键字:连续 空格 imask regex
  • 更新时间 :
  • 英文 :


我试图禁止使用imask库的连续空白。

" This cat is vegan. " - NOT OK

"This cat is vegan." - OK

以下不起作用:

const MaskTitle = {
mask: /^[A-Za-z0-9.-_/+'"&()[]<>s]+$/,
prepare: (str: string) => str.toUpperCase().replace(/  +/g, ' ')
};

因此,我决定更新"mask"属性,将\w[]{2,}\w添加到表达式中

const MaskTitle = {
mask: /^w[ ]{2,}w[A-Za-z0-9.-_/+'"&()[]<>s]+$/, 
prepare: (str: string) => str.toUpperCase()
};

仍然不起作用
有什么想法吗
谢谢!

您可以使用

mask: /^[w./+'"&()[]<>-]+(?:s[w./+'"&()[]<>-]+)*$/

请参阅regex演示详细信息

  • ^-字符串的开头
  • [w./+'"&()[]<>-]+-一个或多个字母、数字、_(w(、./+'"&()[]<>-
  • (?:s[w./+'"&()[]<>-]+)*-零次或多次重复
    • s-空白
    • [w./+'"&()[]<>-]+-一个或多个字母、数字、_(w(、./+'"&()[]<>-
  • $—字符串结束

最新更新