Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 解析WebClient数据_C#_Regex - Fatal编程技术网

C# 解析WebClient数据

C# 解析WebClient数据,c#,regex,C#,Regex,所以我的目标是从一个网站下载一个IP地址列表,如果它找到了,就会调用一些东西。我的问题是分离每个IP。这是我尝试的当前代码 public void BlackList() { try { WebClient check = new WebClient(); check.Encoding = System.Text.Encoding.UTF8; string IPS = check.Do

所以我的目标是从一个网站下载一个IP地址列表,如果它找到了,就会调用一些东西。我的问题是分离每个IP。这是我尝试的当前代码

public void BlackList()
    {
        try
        {
            WebClient check = new WebClient();
            check.Encoding = System.Text.Encoding.UTF8;
            string IPS = check.DownloadString("http://SITE.info/blacklist.txt");
            foreach (string s in Regex.Split(IPS))
            {

            }
        catch (Exception ex)
        {

        }
     }
在这之后,我打算把它们放进一个列表中,如果list.contains IP…等等,那么我就去做,但这不起作用。这个列表看起来像这样

1.1.1.1
2.2.2.2
3.3.3.3

你不需要正则表达式。只需使用String.Split


由于要在单独的行上拆分,因此需要同时处理\r\n和\n样式的换行符,而不仅仅是Environment.NewLine

var blacklist = IPS.Split()
                 .Where(ip => !String.IsNullOrWhiteSpace(ip))
                 .Select(ip => IPAddress.Parse(ip))
                 .ToList();
string[] ipList = IPS.Split(new string[] { "\r\n", "\n" }, StringSplitOptions.None);
foreach (string s in ipList)
{
    //do stuff with s
}