1

我挖掘了很多谷歌匹配,但我找不到正确的、有效的正则表达式来验证域\用户名。
我对正则表达式知之甚少,对域规则和用户名限制/规则一无所知。

谢谢,
彼得

4

2 回答 2

4

您可以只检查用户名中是否存在反斜杠或正斜杠。

string UsernameEntered = @"sm/asd";
var DomainStyleLogin = new Regex(@"^.*(\\|/)");
var match = DomainStyleLogin.Match(UsernameEntered);
if (!match.Success)
{
    //Does not contain a backslash
}

编辑

如果要检查输入的用户名或域,可以使用以下内容:

var ValidUsernameOrDomain = new Regex(@"^[A-Za-z0-9\\\._-]{7,}$");

这将验证:

  • 匹配大小写字母、数字 0-9、下划线、连字符、反斜杠和句点。
  • 字符串不少于 7 个字符(用户名和域至少 3 个字符,加上域斜杠)
于 2013-04-11T14:22:12.723 回答
2

我最终使用 /^[a-zA-Z][a-zA-Z0-9\-\.]{0,61}[a-zA-Z]\\\w[\w\.\- ]+$/
(基于this SO answer

于 2016-08-15T09:50:50.407 回答