Reactjs Regrex在文本输入字段中排除双空格

Reactjs Regrex在文本输入字段中排除双空格,reactjs,regex,Reactjs,Regex,我试图限制textfield使用双空格,但它应该使用单空格。这是我的表达式,它允许空间进入 ^[a-z]{1}[a-zA-Z- ] 如果有人知道如何限制多个空格,请帮助我。您可以使用连字符重复字符类,也可以选择重复前面带有空格的字符类 ^[a-zA-Z]+(?: [a-zA-Z-]+)* ?$ ^字符串的开头 [a-zA-Z]+匹配a-Z a-Z范围内的1+个字符 (?:[a-zA-Z-]+)*可选择重复空格和字符a-Z a-Z或- ?匹配可选空格 $字符串结尾 您可以重复空格^[a-z

我试图限制textfield使用双空格,但它应该使用单空格。这是我的表达式,它允许空间进入

^[a-z]{1}[a-zA-Z- ]

如果有人知道如何限制多个空格,请帮助我。

您可以使用连字符重复字符类,也可以选择重复前面带有空格的字符类

^[a-zA-Z]+(?: [a-zA-Z-]+)* ?$
  • ^
    字符串的开头
  • [a-zA-Z]+
    匹配a-Z a-Z范围内的1+个字符
  • (?:[a-zA-Z-]+)*
    可选择重复空格和字符a-Z a-Z或
    -
  • 匹配可选空格
  • $
    字符串结尾

您可以重复空格
^[a-z][a-z]*(?:[a-zA-z-]+)*$
或者如果您想重复空格或连字符,但不在结尾
^[a-z][a-z]*(?:[-][a-zA-z]+)*$
请回答。这是部分工作,我想第一个字符应该是字母A-Z,从第二个字符不应该允许双空格,这个表达式不匹配的abc和空间像“abc”除了双空格和数字它应该匹配字符串像“ab c”,“abc”,“A B c”@Kishor像这样<代码>^[a-zA-Z]+(?:[a-zA-Z-]+)*?$@Kishor它成功了吗?是的,它对我有效。谢谢,你救了我。但是你能解释一下它是怎么工作的吗。我不明白你的不匹配模式,而且这个regrex看起来不安全。