[正则表达式]高分求助, 如何书写(包含匹配)的正则表达式
搜了半天, 也没找出国所以然来
源串:
<table>
<tr><td>aaaaa</td></tr>
<tr><td>aabcb</td></tr>
<tr><td>bbbb</td></tr>
</table>
目标:
我要匹配, 包含abc的<tr>到</tr> 之间的内容, 正则咋写, 拾到半天搞不定(也就是说,我要匹配第二个tr之间的内容含<tr>)
------解决方案--------------------------------------------------------
(?i)<tr>.*?abc.*?</tr>
------解决方案--------------------------------------------------------
- C# code
 
void Main(){ string hcontent2=@"<table>  <tr><td>aaaaa</td></tr>  <tr><td>aabcb</td></tr>  <tr><td>bbbb</td></tr></table>";foreach(Match m in Regex.Matches(hcontent2, @"(?i)<tr>.*?abc.*?</tr>"))    {    Console.WriteLine(m.Value);     }    /*     <tr><td>aabcb</td></tr    */}
------解决方案--------------------------------------------------------
目标为什么是:
 <tr>
Tar_Candle
</tr>
------解决方案--------------------------------------------------------
- C# code
 
void Main(){    string hcontent2=@"<table><tr>12343<tr><tr>3454afsadf35<tr></table><table><tr><table><tr>Tar_Candle</tr></table></tr><tr>Tar_Abc</tr><tr>aaa</tr></table><table><tr>adaf</tr><tr>xys</tr></table>";foreach(Match m in Regex.Matches(hcontent2, @"(?is)<tr>((?!</?tr>).)*?Candle((?!</tr>).)*?</?tr>"))    {    Console.WriteLine(m.Value);     }    /*     <tr>    Tar_Candle    </tr>    */}