使用正则表达式检查最少数量的字符?

时间:2012-02-26 06:07:58

标签: c# regex winforms

我有以下代码来验证应用程序的用户名:

Regex usernameRegex = new Regex("[A-Za-z0-9_]");
if (usernameRegex.IsMatch(MyTextBox.Text)) {
    // Create account, etc.
}

如何修改正则表达式以检查用户名是否包含一定数量的字符?

3 个答案:

答案 0 :(得分:0)

此表达式仅验证包含A to Za to z和数字0 to 9的任意组合的所有文本也可以包含-。您可以使用正则表达式

定义字符串的长度

Regex reg= new Regex(@"^[A-Z]{3,}[a-z]{2,}\d*$")

这意味着这里必须至少有3个大写字符,至少2个小字符和任意数量的字符

例如: 有效:AAAbb,AAAbb2,AAAAAAbbbbb,AAAAAbbbbbb4343434

invlid:AAb,Abb,AbAbabA,1AAAbb,

答案 1 :(得分:0)

要在正则表达式中设置最小(或最大)范围,可以使用{from,to}语法。

以下内容仅匹配至少包含5个字母数字和下划线字符的字符串:

[A-Za-z0-9_]{5,}

以下内容将匹配最小值5和最大值10:

[A-Za-z0-9_]{5,10}

答案 2 :(得分:0)

[A-Za-z0-9_]

[] "brackets":是您要匹配的一组字符。

A-Z:表示它将匹配此范围A-Z中大写的任何字母。

a-z:表示它将匹配此范围内的任何小字母a-z。

0-9:表示它将匹配此范围0-9中的任何数字。

_:表示它将匹配“_”字符。

现在这个正则表达式通常匹配以下内容:从a到z(小,大写),任何数字(从0到9)和下划线“_”的任何字符。

即。 “a。,。B.,10 .._”这将匹配“a,B,10,_”。但是当然你需要添加单行正则表达式选项。