我需要将字符串限制为只允许字母、数字、连字符、与号、撇号和单个空格。
到目前为止,通过一些搜索,我得到了这个:
^[A-Za-z0-9-'&\s]{1,}$
但这允许使用双倍空格。如何编写正则表达式以使其仅允许单个空格(可能根本没有空格)?
匹配任何其他允许的值,后跟可选的单个空格:
^\s?([A-Za-z0-9-'&]\s?){1,}$
(我还在开始时添加了一个可选的,如果允许的话)
Try this
^([A-Za-z0-9-'&]+\s?)+$
我尝试过不同的场景,它适用于我 ^\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; }