天天看點

UNITY 判斷IP格式是否正确

/// <summary>
    /// 判斷IP格式
    /// </summary>
    /// <param name="strJudgeString"></param>
    /// <returns></returns>
    private bool JudgeIPFormat(string strJudgeString)
    {
        bool blnTest = false;
        bool _Result = true;

        Regex regex = new Regex("^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$");
        blnTest = regex.IsMatch(strJudgeString);
        if (blnTest == true)
        {
            string[] strTemp = strJudgeString.Split(new char[] { '.' }); // textBox1.Text.Split(new char[] { ‘.’ });
            int nDotCount = strTemp.Length - 1; //字元串中.的數量,若.的數量小于3,則是非法的ip位址
            if (3 == nDotCount)//判斷字元串中.的數量
            {
                for (int i = 0; i < strTemp.Length; i++)
                {
                    if (Convert.ToInt32(strTemp[i]) > 255)
                    {
                        //大于255則提示,不符合IP格式                     
                        Debug.Log("不符合IP格式");
                        _Result = false;
                    }
                }
            }
            else
            {
                Debug.Log("不符合IP格式");
                _Result = false;
            }
        }
        else
        {
            //輸入非數字則提示,不符合IP格式
            _Result = false;
        }
        return _Result;
    }