“验证电话号码”文本框

本文关键字:文本 电话号码 验证 | 更新日期: 2023-09-27 18:21:21

我想知道如何使用以下代码验证文本框中的电话号码:

System.Text.RegularExpressions.Regex rphone = new System.Text.RegularExpressions.Regex(@"^(('+){0,1}91('s){0,1}('-){0,1}('s){0,1}){0,1}9[0-9]('s){0,1}('-){0,1}('s){0,1}[1-9]{1}[0-9]{7}$");

“验证电话号码”文本框

try:

'+[0-9]{3}'s+[0-9]{3}'s+[0-9]{5}'s+[0-9]{3}

这是对上面模式的一点解释。

'+ -------------|> +sign
[0-9]{3} -------|> matches 0-9 max of 3digit
's+ ------------|> a whitespace

与您的样本匹配:+020 111 94546 333

如果你想验证号码是否已完成,比如说你有一个按钮,然后在文本框中做一些类似的事情:

private void button1_Click(object sender, EventArgs e)
{
    Regex phoneNumpattern = new Regex(@"'+[0-9]{3}'s+[0-9]{3}'s+[0-9]{5}'s+[0-9]{3}");
    if (phoneNumpattern.IsMatch(textBox1.Text))
    {
        MessageBox.Show("OK");
    }
    else
    {
        MessageBox.Show("Invalid phone number");
    }
}
private void myTextBox_Leave(object sender, EventArgs e)
{
    Regex pattern = new Regex(@"^(('+){0,1}91('s){0,1}('-){0,1}('s){0,1}){0,1}9[0-9]('s){0,1}('-){0,1}('s){0,1}[1-9]{1}[0-9]{7}$");
    if (pattern.IsMatch(myTextBox.Text))
    {
        MessageBox.Show("OK");
    }
    else
    {
        MessageBox.Show("Invalid phone number");
    }
}