1

プログラムでそれらを処理するために、フォーラムの div タグ間のすべてを取得しようとしています。フェッチされたページは次のようになります。

<div id="post_message_1234567">

        <a href="http://blahblah.com" target="_blank"><img src="http://blahblah.com/iuhiuhuh.gif" border="0" alt="" /></a> <br />
<br />
jofjhoeifjoiwefjoweifj<br />
 blahblahblahpokpoekpfowef<br />
<br />
khfiudhfisduhfiusdfh<br />
<br />
<a href="http://blah.com/img.php?image=trepazoid.jpg" target="_blank"><img src="http://blah.com/loc367/euhfwieufhwifuhiwefuh.jpg" border="0" alt="" /></a><br />
<br />
one<br />
 two*three<br />
 87879879 nuts<br />
 11 bananas<br />
<br />
<a href="hjoiwjhfoweif.dat" target="_blank">Monkeys</a>
        </div>

この正規表現コードを試してみましたが、役に立ちませんでした:

string find = "\\b<div id=\"post_message_\\d+\">\\n*.*</div>\\b";

<div id="post_message_1234567">との間のすべてを取得するのを手伝ってくれません</div>か?

4

1 に答える 1

1

これはどう:

@"<div id=""post_message_\d+"">(?<Content>(\r|\n|.)*)</div>"

例:

string searchString = @"<div id=""post_message_1234567"">

        <a href=""http://blahblah.com"" target=""_blank""><img src=""http://blahblah.com/iuhiuhuh.gif"" border=""0"" alt="""" /></a> <br />
<br />
jofjhoeifjoiwefjoweifj<br />
 blahblahblahpokpoekpfowef<br />
<br />
khfiudhfisduhfiusdfh<br />
<br />
<a href=""http://blah.com/img.php?image=trepazoid.jpg"" target=""_blank""><img src=""http://blah.com/loc367/euhfwieufhwifuhiwefuh.jpg"" border=""0"" alt="""" /></a><br />
<br />
one<br />
 two*three<br />
 87879879 nuts<br />
 11 bananas<br />
<br />
<a href=""hjoiwjhfoweif.dat"" target=""_blank"">Monkeys</a>
        </div>";
Regex regex = new Regex(@"<div id=""post_message_\d+"">(?<Content>(\r|\n|.)*)</div>");
Match match = regex.Match(searchString);
bool success = match.Success; // True
string content = match.Groups["Content"].Value;

content必要なタグ間のすべてが含まれるようになりました。

于 2013-11-08T19:28:33.937 に答える