Regex mvc模型中如何限制尾随空格
我有一张登记表,上面有名字和姓氏作为样板房之一。我不希望用户在字符串的开头和结尾输入空格。我想使用Regex实现这一点。我尝试了以下代码,但这不允许用户在两个单词之间输入空白,我不想限制这一点Regex mvc模型中如何限制尾随空格,regex,asp.net-mvc,model,Regex,Asp.net Mvc,Model,我有一张登记表,上面有名字和姓氏作为样板房之一。我不希望用户在字符串的开头和结尾输入空格。我想使用Regex实现这一点。我尝试了以下代码,但这不允许用户在两个单词之间输入空白,我不想限制这一点 [RegularExpression(@"^[^\s]+$", ErrorMessage = "Required.")] 有效:“约翰·保罗” 无效:“约翰·保罗” 无效:“约翰·保罗” 提前感谢。要允许使用一两个单词,请使用 @"^\S+(?:\s+\S+)?$" @"^\S+(?:\s+\S+)*
[RegularExpression(@"^[^\s]+$", ErrorMessage = "Required.")]
有效:“约翰·保罗”
无效:“约翰·保罗”
无效:“约翰·保罗”
提前感谢。要允许使用一两个单词,请使用
@"^\S+(?:\s+\S+)?$"
@"^\S+(?:\s+\S+)*$"
其中,(?:\s+\s+)
在1+空格符号(\s+
)之后匹配可选的1+非空格符号序列(\s+
)
要允许使用一个或多个“单词”,请使用
注意:要在单词之间只允许1个空格,请将\s+
替换为\s
注2:如果只允许使用常规空格(即不允许使用制表符等),请将\s
替换为空格
详细信息:
-字符串的开头^
-1个或多个非空白字符\S+
-与0+匹配的非捕获组(由于(?:\s+\s+*
量词)序列:*
-1+(由于使用了\s+
量词,如果需要只允许单词之间使用单个空格,请将其删除)空格+
-1个或多个非空白字符\S+
-字符串结束$