string pattern=@"<div id=""sohu_content"" class=""article"">\s*(?<content> [\\s\\S]+?)<table border=0 cellspacing=0 cellpadding=0  align=""left""> <tr><td valign=top>";
我写的正则如上,目的是为了得到下面加色的部分,请问为什么什么也得不到呢?</div>
</div>

<div class="ad_h_25">
<SOHUADCODE>
</SOHUADCODE></div>
                                    <div class="clear"></div>
</div>

<div id="sohu_content" class="article">

<P><FONT 
color=#666600>  老套的小西服和一步裙、上下一色的套装,让人觉得刻薄呆板,再配上沉闷的办公室,恐怕连工作的情绪都要降低。牛仔和针织衫这些以前看来过于随意的衣服又回来了。</FONT></P>
<TABLE cellSpacing=0 cellPadding=0 align=center border=0>
<TBODY>
<TR>
<TD align=middle><table cellspacing=0 cellpadding=0 border=0><tr><td><IMG alt="" 
src="http://photocdn.sohu.com/20080225/Img255350245.jpg" align=middle></td></tr></table></TD></TR>
<TR>
<TD style="FONT-SIZE: 12px" align=middle 
scw_ig="yes"></TD></TR></TBODY></TABLE><BR>
<P></P><FONT color=#666600></FONT>
<P>  <STRONG>图1:</STRONG>贴身的针织衫<BR>  可以用长短的不同和色彩的反差来穿出搭配的层次,对显出苗条的身材很有利。</P>
<TABLE cellSpacing=0 cellPadding=0 align=center border=0>
<TBODY>
<TR>
<TD align=middle><table cellspacing=0 cellpadding=0 border=0><tr><td><IMG alt="" 
src="http://photocdn.sohu.com/20080225/Img255350246.jpg" align=middle></td></tr></table></TD></TR>
<TR>
<TD style="FONT-SIZE: 12px" align=middle 
scw_ig="yes"></TD></TR></TBODY></TABLE><BR>
<P></P>
<P>  <STRONG>图2:</STRONG>雪纺和针织搭配<BR>  多层次的搭配是这一季比较流行的方法,雪纺和针织搭配在一起更显温柔的气质,一条简单的紧身牛仔裤可以让身材更加修长。</P>
<TABLE cellSpacing=0 cellPadding=0 align=center border=0>
<TBODY>
<TR>
<TD align=middle><table cellspacing=0 cellpadding=0 border=0><tr><td><IMG alt="" 
src="http://photocdn.sohu.com/20080225/Img255350247.jpg" align=middle></td></tr></table></TD></TR>
<TR>
<TD style="FONT-SIZE: 12px" align=middle 
scw_ig="yes"></TD></TR></TBODY></TABLE><BR>
<P></P>
<P>  <STRONG>图3:</STRONG>橙色的高领针织衫<BR>  在办公室里也可以做一个纯粹的牛仔,可以穿着牛仔衣和牛仔裤,还有牛仔裙,上衣的款式可以是简洁的夹克款式,也可以是西服的改良款式,裙子还是收身的样式为佳。这样既不失职业装的风格,又可以看起来不刻板。</P>
<TABLE cellSpacing=0 cellPadding=0 align=center border=0>
<TBODY>
<TR>
<TD align=middle><table cellspacing=0 cellpadding=0 border=0><tr><td><IMG alt="" 
src="http://photocdn.sohu.com/20080225/Img255350248.jpg" align=middle></td></tr></table></TD></TR>
<TR>
<TD style="FONT-SIZE: 12px" align=middle 
scw_ig="yes"></TD></TR></TBODY></TABLE><BR>
<P></P>
<P>  <STRONG>图4:</STRONG>小翻领的夹克衫<BR>  中性色调的针织外套比较讨巧,属于不容易被人反感的色彩,小翻领的夹克衫款式也很符合上班的气氛。</P>
<TABLE cellSpacing=0 cellPadding=0 align=center border=0>
<TBODY>
<TR>
<TD align=middle><table cellspacing=0 cellpadding=0 border=0><tr><td><IMG alt="" 
src="http://photocdn.sohu.com/20080225/Img255350249.jpg" align=middle></td></tr></table></TD></TR>
<TR>
<TD style="FONT-SIZE: 12px" align=middle 
scw_ig="yes"></TD></TR></TBODY></TABLE><BR>
<P></P>
<P>  <STRONG>图5:</STRONG>低V领的针织衫<BR>  高贵神秘的紫色无论何时都让人着迷,低V领的针织衫收腰设计不仅突出女性丰满胸部,同时勾勒出纤细的腰部,一举两得。
</P><table border=0 cellspacing=0 cellpadding=0  align="left"> <tr><td valign=top><table width=350 height=250 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=350 height=250 align=left>
<div id=TurnAD42 width=350 height=250></div>
 <script language=javascript>
try{
var TurnAD42=new Cookie(document,"TurnAD42",24);
TurnAD42.load();
TurnAD42.visit=(TurnAD42.visit==null)?parseInt(Math.random()*2+1):TurnAD42.visit;
if(TurnAD42.visit!=0)var intTurnAD42=TurnAD42.visit;
TurnAD42.visit++;
TurnAD42.visit=(TurnAD42.visit>2)?1:TurnAD42.visit;
TurnAD42.store();
function showTurnAD42(basenum){
if (basenum==1){
document.getElementById('TurnAD42').innerHTML = "<iframe id=TurnAD420 src='http://images.sohu.com/chat_online/et/etpip.html' scrolling=no width=350 height=250 marginWidth=0 marginHeight=0 frameborder=0 border=0></iframe>";}
else{
document.getElementById('TurnAD42').innerHTML = "<iframe id=TurnAD420 src='http://images.sohu.com/chat_online/et/etpip.html' scrolling=no width=350 height=250 marginWidth=0 marginHeight=0 frameborder=0 border=0></iframe>";}
}
showTurnAD42(intTurnAD42);

解决方案 »

  1.   

    \\s\\S
    前面加了@
    试试用\s\S
      

  2.   

    string pattern = @"(?si)<div\s+id=""sohu_content""\s+class=""article"">\s*(?<content>.*?)<table border=0\s+cellspacing=0\s+cellpadding=0\s+align=""left"">";用(?s)表示.可以匹配换行符,就可以使用*(?<content>.*?),而不必[\s\S]*?。另,(?i)表示不区分大小写的匹配。
      

  3.   

    用\s\S 也不行的,不知道为什么?wuyi8808 的没问题,可以取到
      

  4.   

    试下string pattern = @"<div\s*id=""sohu_content""\s*class=""article"">\s*(?<content>[\s\S]*?)<table\s*border=0\s*cellspacing=0\s*cellpadding=0\s*align=""left"">";字符串前面加了@,写正则时不用“\\”对“\”转义另外注意用做标识的固定的字符串,除非它是完全确定固定不变的,否则空格和换行最好用\s*来代替,就算这里差一个字符,正则也不会匹配成功的