-5

我在一个字符串中有来自串行端口的三个 IP 地址。例如,字符串就像192.168.1.1/192.168.1.12/192.168.1.118. 我们如何检测'/'字符,以便我们可以将这个字符串分成3个IP地址字符串,并将每个字符串放入IP1字符串,IP2字符串和IP3字符串?

4

6 回答 6

3

var res = "192.168.1.1/192.168.1.12/192.168.1.118".Split('/');

于 2012-07-31T08:28:43.983 回答
1

最好的方法是这样做:

string sRaw = "192.168.1.1/192.168.1.12/192.168.1.118";
string[] sParts = new string[]{};

if(sRaw.Contains('/')){
  sParts = sRaw.Split('/');
}

但是不要忘记使用 IPAddress 来验证 IP。 http://msdn.microsoft.com/en-us/library/system.net.ipaddress.aspx

于 2012-07-31T08:32:10.130 回答
0

请使用String.Split('/')方法

例子:

var text = "192.168.1.1/192.168.1.12/192.168.1.118".Split('/');
于 2012-07-31T08:29:05.070 回答
0
string sData = "192.168.1.1/192.168.1.12/192.168.1.118";
string[] sIps = null;

if (sData.Contains('/'))
    sIps = sData.split('/');

// sIps[i] contains your data
于 2012-07-31T08:30:19.783 回答
0

您可以添加 StringSplitOptions.RemoveEmptyEntries 以避免因输入数据中的重复/拖尾斜杠而导致空项目。

var data = "192.168.1.1/192.168.1.12/192.168.1.118";
var result = data.Split('/', StringSplitOptions.RemoveEmptyEntries);
于 2012-07-31T08:33:20.180 回答
0
string arrStr = "192.168.1.1/192.168.1.12/192.168.1.118";
char[] separator = new char[] { '/' };
string[] strSplitArr = arrStr.Split(separator);

string IP1 = strSplitArr[0];
string IP2 = strSplitArr[1];
string IP3 = strSplitArr[2];
于 2012-07-31T08:33:26.393 回答