4

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

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

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

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

4

3 回答 3

7

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

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

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

于 2013-08-09T10:51:52.927 回答
1
Try this
^([A-Za-z0-9-'&]+\s?)+$
于 2013-08-09T10:56:34.397 回答
0

我尝试过不同的场景,它适用于我 ^\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; }
于 2019-11-15T04:58:35.770 回答