【问题标题】:Regex - only allow single spaces within a string正则表达式 - 仅允许字符串中的单个空格
【发布时间】:2013-08-09 10:47:55
【问题描述】:

我需要将字符串限制为只允许使用字母、数字、连字符、与号、撇号和单个空格。

到目前为止,我通过一些搜索得到了这个:

^[A-Za-z0-9-'&\s]{1,}$

但这允许使用双空格。如何编写正则表达式以使其只允许单个空格(可能根本没有空格)?

【问题讨论】:

    标签: c# regex


    【解决方案1】:

    匹配任何其他允许的值,后跟一个可选的单个空格:

    ^\s?([A-Za-z0-9-'&]\s?){1,}$
    

    (如果允许的话,我还在开头添加了一个可选的)

    【讨论】:

      【解决方案2】:
      Try this
      ^([A-Za-z0-9-'&]+\s?)+$
      

      【讨论】:

        【解决方案3】:

        我尝试过不同的场景,它适用于我 ^\b(?!.*?\s{2})[A-Za-z0-9 ]{1,50}\b$

        [RegularExpression(@"^\b(?!.*?\s{2})[A-Za-z0-9 ]{1,50}\b$", ErrorMessage ="String is not valid"]
        public string FirstName{ get; set; }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-11-11
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多