有一段文字:
- HTML code
abdddc<div class="content" id="content5243635">还有<a href ="http://www.163.com" target="_blank">这样</a><div class="ad">abddddsss
我想最终的结果是
还有这样
这个正则怎么写?
我只能获取一部分,但不知道怎么去掉链接
- HTML code
<div class="content" id="content\d*">((.|\n)*?)<div class="ad">
------解决方案--------------------------------------------------------
分组吧。前面俩字一组,后面俩字一组,再替换两个相加吧
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------
- C# code
string str = @"abdddc<div class=""content"" id=""content5243635"">还有<a href =""http://www.163.com"" target=""_blank"">这样</a>没有<a href =""http://www.163.com"" target=""_blank"">那样</a>很好<div class=""ad"">abddddsss"; Regex reg = new Regex(@"(?is)<div[^>]*?id=""content5243635""[^>]*?>(?:\s*([^<>]*)(?:<[^>]+>([^<>]+)</[^>]+>)?)*(?=\s*<div[^>]*?class=""ad"")"); Match m = reg.Match(str); int length = m.Groups[1].Captures.Count; int minlength = m.Groups[2].Captures.Count; string result = string.Empty; for (int i = 0; i < length; i++) { result += m.Groups[1].Captures[i].Value; result += i>=minlength ? "" : m.Groups[2].Captures[i].Value; } Console.WriteLine(result);/*还有这样没有那样很好*/