C# 将用户名限制为名称末尾只有一个连字符

C# 将用户名限制为名称末尾只有一个连字符,c#,asp.net,regex,C#,Asp.net,Regex,我需要RegularExpressionValidator的正则表达式来验证名称。 目前它是[A-Za-z'\]+。现在的要求是用户名可以以连字符结尾,并且只有一个连字符,后面什么也没有 因此名称可以是john-,但不能是-john,也不能是john-^开头和结尾的\-?$应该可以: ^[A-Za-z' ]+-?$ 开头的^和结尾的\-?$应该可以: ^[A-Za-z' ]+-?$ 不需要逃避连字符(也不需要空格,想想看)。否则,+1:)不需要逃避连字符(或者空格,想想看)。否则,+1:)

我需要RegularExpressionValidator的正则表达式来验证名称。 目前它是
[A-Za-z'\]+
。现在的要求是用户名可以以连字符结尾,并且只有一个连字符,后面什么也没有


因此名称可以是john-,但不能是-john,也不能是john-

^
开头和结尾的
\-?$
应该可以:

^[A-Za-z' ]+-?$

开头的
^
和结尾的
\-?$
应该可以:

^[A-Za-z' ]+-?$
不需要逃避连字符(也不需要空格,想想看)。否则,+1:)不需要逃避连字符(或者空格,想想看)。否则,+1:)