C#编程,如何验证字符串为IP地址的格式的正确性例如,在textbox1 里输入一个字符串,想让它必须是IP地址格式的,其它的字符串格式,则不会弹出错误提示!
该如何做到呢?

解决方案 »

  1.   

    using System.Text.RegularExpressions;public static bool IsIP(string source)
    {
       return Regex.IsMatch(source, @"^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$", RegexOptions.IgnoreCase);
    }
      

  2.   


    using System.Net;IPAddress address;if (IPAddress.TryParse(textBox1.Text, out address))
    {
                    MessageBox.Show(address.ToString());
    }
      

  3.   

    if(Regex.IsMatch(yourStr, @"^(?:(?:[1-9]?[0-9]|1[0-9]{2}|2(?:[0-4][0-9]|5[0-5]))\.){3}(?:[1-9]?[0-9]|1[0-9]{2}|2(?:[0-4][0-9]|5[0-5]))$"))
        MessageBox.Show("是IP");
    else
        MessageBox.Show("不是IP");
      

  4.   

    用.net类库有tryparse 正则太麻烦 
      

  5.   

    正则表达式
    return Regex.IsMatch
    返回是否匹配,bool值