Regex reg11 = new Regex(@"(?is)(?=</h3>)(?:(?!<h3).)+", RegexOptions.Compiled);1.这个正则的意思是取</h3>和下可以个<h3>之间的值,现在有个问题的就是,取出来的值总是开头包含</h3>.求高人帮忙改过。2.同时取出的值中还包含"/n","/b"的东西,想要去掉,想问高人可否通过改善上面的正则直接去掉这些东西,得到最终的结果。我想如果不能我就再写个替换的表达式吧
调试欢乐多
string yourHTML = @" <h3 height=er"">test</h3>"; Regex reg = new Regex(@"(?<=<(\w+).*?>).*(?=<\/\1>)"); foreach (Match m in reg.Matches(yourHTML))
{
Console.WriteLine(m.Value);
}
Regex reg11 = new Regex(@"(?is)(?<=</h3>)(?:(?!<h3).)+", RegexOptions.Compiled);
Regex reg12 = new Regex(@"(?is)(?=</h2>)(?:(?!<h2).)+", RegexOptions.Compiled);
Regex reg13 = new Regex(@"(?is)(?=</em>)(?:(?!<em).)+", RegexOptions.Compiled);因为这个程序里要做很多次的正则,所以我想找一个通用的写法,例如上面我就传参数h2,h3,em就可以了。但楼上的写法好像满足不了这个。请您帮我想个可以不改变上面大体格式的写法可以么
参考这个帖子的提问
http://topic.csdn.net/u/20100823/23/96eab644-27cd-457a-847a-9ce9838366f1.html