<div style="float:left;"><a href="/z/TopQuestion.htm">全部问题</a> <span>></span><a href="/z/c16777216.htm">游戏</a><span>></span><a href="/z/c18284544.htm">金山游戏</a><span>></span><a href="/z/c18297088.htm">其它金山游戏</a><span>></span>问题页</div>我想提取的结果是:
其它金山游戏也就是最后一个 .htm"> 和 </a><span>></span>问题页</div> 中间的值。自己正则有点烂。总是学了忘!。蹩脚的写了个正则 .htm">(.*?)</a><span>></span>问题页 结果返回肯定不行,匹配了一大窜。不知道怎么弄。高手帮帮忙。谢谢
为什么想匹配最后一个,因为这是个面包屑导航,很有可能会少几个栏目,但是我还是需要获取最后一个 .htm"> 和 </a><span>></span>问题页</div> 中间的值。
其它金山游戏也就是最后一个 .htm"> 和 </a><span>></span>问题页</div> 中间的值。自己正则有点烂。总是学了忘!。蹩脚的写了个正则 .htm">(.*?)</a><span>></span>问题页 结果返回肯定不行,匹配了一大窜。不知道怎么弄。高手帮帮忙。谢谢
为什么想匹配最后一个,因为这是个面包屑导航,很有可能会少几个栏目,但是我还是需要获取最后一个 .htm"> 和 </a><span>></span>问题页</div> 中间的值。
string result = Regex.Match(yourHtml,@"TopQuestion.htm(?:[^>]*>){13}([^<]+)").Groups[1].Value;
看看result是不是对的。如果不对,你贴完整的html或给网址看看。
通过匹配获取所有a节点.然后取最后一个索引即为你所需要的值...呵呵..
网址是:http://wenwen.soso.com/z/q223219203.htm
Regex reg = new Regex(string.Format("(?is)(?<={0}).+?(?={1})", Regex.Escape(@".htm"">"), Regex.Escape(@"</a><span>></span>问题页</div>")));
这个可以
你这网址,用我第一次给你回复的,得到是唯一的结果。就是你要的。
System.Text.RegularExpressions.Regex reg = new Regex(".htm\">\\S*</a><span>></span>问题页</div>$");
Match mat = reg.Match(y);
System.Console.WriteLine("match:" + mat.ToString()+ "#"+mat.ToString().Replace(".htm\">","").Replace("</a><span>></span>问题页</div>",""));
}
Regex.Match(html, ".htm\">\\w*</a><span>></span>问题页</div>", RegexOptions.Multiline).ToString().Replace(".htm\">", "").Replace("</a><span>></span>问题页</div>", "");这个试下
string s = @"d:\ttt1\cabc2\test3\tets4";
Console.WriteLine(Regex.Replace(s, @"(.*?)\\([^\\]*)\\([^\\]*)$", "$1\\NewContent\\$3"));string s1 = @"d:\ttt1\cabc2\test3\tets4\tets5";
Console.WriteLine(Regex.Replace(s1, @"(.*?)\\([^\\]*)\\([^\\]*)$", "$1\\NewContent\\$3"));CSS code
d:\ttt1\cabc2\NewContent\tets4
d:\ttt1\cabc2\test3\NewContent\tets5
Match m = reg.Match(yourStr);
if (m.Success)
{
richTextBox2.Text = m.Groups[1].Value;
}