/// <summary> /// 返回指定IP是否在指定的IP数组所限定的范围内, IP数组内的IP地址可以使用*表示该IP段任意, 例如192.168.1.* /// </summary> /// <param name="ip"></param> /// <param name="iparray"></param> /// <returns></returns> public static bool InIPArray(string ip, string[] iparray) { try { string[] userip = Utils.SplitString(ip, @"."); for (int ipIndex = 0; ipIndex < iparray.Length; ipIndex++) { string[] tmpip = Utils.SplitString(iparray[ipIndex], @"."); int r = 0; for (int i = 0; i < tmpip.Length; i++) { if (tmpip[i] == "*") { return(true); } if (userip.Length > i) { if (tmpip[i] == userip[i]) { r++; } else { break; } } else { break; } } if (r == 4) { return(true); } } } catch (System.Exception ex) { //new ECFException(ex); } return(false); }