C# - 使用带有if语句的正则表达式

时间:2011-06-20 18:17:54

标签: c# .net windows regex

我有一些代码可以检查针对正则表达式的字段输入,虽然由于某种原因(无论我在字段中放置什么,它都会返回flase。是否有我错过的内容?

private void textBox5_Validating(object sender, CancelEventArgs e)
{
    String AllowedChars = @"^a-zA-Z0-9.$";
    if (Regex.IsMatch(textBox5.Text, AllowedChars))
    {
        MessageBox.Show("Valid");
    }
    else
    {
        MessageBox.Show("Invalid");
    }
}

3 个答案:

答案 0 :(得分:7)

正则表达式对我没有意义。这个会(注意用于定义字母表的方括号):

String AllowedChars = @"^[a-zA-Z0-9]*$";

答案 1 :(得分:6)

您想要的是对这些字符进行分组并允许0或更多:

@"^[a-zA-Z0-9.]*$"

否则,您发布的内容允许“a-zA-Z0-9”和另外一个

答案 2 :(得分:5)

可能不正确的正则表达式。也许你是这个意思:

String AllowedChars = @"^[a-zA-Z0-9]*$";

这将允许任何数字(包括没有)字母数字字符。我删除了句号(匹配任何字符),因为它在这种情况下没有多大意义。