using System; using System.IO; using System.Net; using System.Text.RegularExpressions; class MainClass { private static void Main() { string remoteUri = "http://www.apress.com"; WebClient client = new WebClient(); string str = client.DownloadString(remoteUri); MatchCollection matches = Regex.Matches(str, @"http\S+[^-,;:?]\.gif"); foreach (Match match in matches) { foreach (Group grp in match.Groups) { string file = grp.Value.Substring(grp.Value.LastIndexOf('/') + 1); try { Console.WriteLine("Downloading {0} to file {1}", grp.Value, file); client.DownloadFile(new Uri(grp.Value), file); } catch { Console.WriteLine("Failed to download {0}", grp.Value); } } } } }