<table width="97%" border="0" align="center" cellspacing="0" cellpadding="0">
<tr>
<td align="left" valign="middle" class="cvtitle">自我评价</td>
</tr>
<tr>
<td align="middle" valign="middle" height="4">
<img src="http://img01.51jobcdn.com/im/2009/resumetemplate/line1_1.gif" width="100%" height="4">
</td>
</tr>
<tr>
<td height="10" align="left" valign="middle">
</tr>
<tr>
<td id="Cur_Val" valign="top">1.具有良好的文案能力和表达能力;
<br>2.学习能力和适应能力强;
<br>3.具有良好亲和力和沟通协调能力;
<br>4.具有较强的数据分析能力;
<br>5.具有项目管理及执行能力;
<br>6.有进取心,勤奋。</td>
</tr>
<tr>
<td height="10" align="left" valign="middle">
</tr>
</table>怎么把 自我评价 和 下面的1到6个自我评价的内容取出来。

解决方案 »

  1.   

    (?is)(?<=<td\sid="Cur_Val"[^>]*?>).*?(?=</tr>)
      

  2.   

    兔子 帮我解释个 正则(?is)<t[dh][^>]*>((?:(?!</td>).)*)</t[dh]>
    红色部分的意思  尤其是?写在前面是什么意思?
      

  3.   

    过客 tim 帮我解答下嘛
    (?is)<t[dh][^>]*>((?:(?!</td>).)*)</t[dh]>
    红色部分的意思 尤其是?写在前面是什么意思?
      

  4.   

    Regex regex = new Regex(@"(?<=>)\S+?(?=\s*\<)");
                string path=@"C:\Data.txt"; 
                string result = File.ReadAllText(path);            MatchCollection mc = regex.Matches(result);
                foreach (Match m in mc)
                {
                    string str = m.Value;
                }
      

  5.   

    理论性的东西在我的博客里都有(?:(?!</td>).)*
    这个先从排除型字符组说起
    [^abc] 可以匹配除“a”、“b”、“c”外的任意一个字符,它虽然能同时排除多个字符,但这些字符是无序的,也就是[^abc]和[^cba]是等价的
    如果想排除有序的字符序列,也就是字符串,排除型字符组是无能为力的,所以有这种需求时,要用到环视
    (?!</td>). 表示包括这个字符在内,右侧不是</td>的任意一个字符
    ((?!</td>).)* 符合上面条件的字符,0个或任意多个
    (?:exp) 是非捕获组的语法
      

  6.   

    谢谢。。过客,最后一个问题,什么叫匹配 但不捕获? 就是(?:exp) 其他都懂了。
      

  7.   

    正则表达式:a(b)
    源字符串:ab
    整个匹配结果为:ab
    这个表达式有两个捕获组
    Group[0],就是整个表达式a(b),捕获的内容是:ab
    Group[1],是(b),捕获的内容是:b正则表达式:a(?:b)
    源字符串:ab
    整个匹配结果为:ab
    这个表达式只有一个捕获组,Group[0],捕获的内容就是:ab(?:exp) 以上就是只匹配,但是不捕获到捕获组中