0

次のコードは、「よくやった!」のみを返します。そこから実際の URL を取得するにはどうすればよいですか? 指定されたサイトのチュートリアルに従いましたが、まだ頭を悩ませています。また、これは正規表現 (正規表現と html の混合) を使用するための最良の方法ではないと思います。CSS クラスに基づいてテキストをキャプチャする簡単な方法はありますか?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net;
using System.IO;
using System.Text.RegularExpressions;



namespace Scraper
{
    class Program
    {
        static void Main(string[] args)
        {
            string target = @"http://www.omegacoder.com/?p=58";
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(target);
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();

            Regex URL  = new Regex("(?:href=)(?<link>.*?)");

            string line;
            using (Stream responseStream = response.GetResponseStream())
            using (StreamReader htmlStream = new StreamReader(responseStream))
                while ((line = htmlStream.ReadLine()) != null){

                    Match m = URL.Match(line);

            if (m.Success) {
                Console.WriteLine("Good job! " + URL.Match(line) + m.Groups[0].Value + m.Groups[1].Value + m.Groups["link"]);
                Console.ReadLine();
            } else {

            }

                }  
                /*    if (Regex.IsMatch(line, "XXXXX")) 
                            Console.WriteLine(line);
                } */
            Console.ReadLine();

        }
    }
}
4

1 に答える 1

0

使用する必要があります(?:href=)(?<link>\S*)

\Sスペース以外の文字に一致

于 2013-02-19T05:33:07.153 に答える