string a = "<a>";
string b = "</a>";
string s = "<a>123</a><a>1123</a><a>123</a><a>132</a>";我希望得到s中,所有以a字符串开头,以b字符串结尾的字符串,也就是:
123
1123
123
132求一个比较灵活的解决办法,我需要根据不同的规则抓取网页中不同位置的字符串,谢谢了!
string b = "</a>";
string s = "<a>123</a><a>1123</a><a>123</a><a>132</a>";我希望得到s中,所有以a字符串开头,以b字符串结尾的字符串,也就是:
123
1123
123
132求一个比较灵活的解决办法,我需要根据不同的规则抓取网页中不同位置的字符串,谢谢了!
解决方案 »
- 怎样取出两个DateTable中的不重复行???
- C#怎么让界面设计上声音效果??谢谢
- 救命,急急争,快点帮帮我,一个关于GridView的问题!~
- 求c#中文全局键盘钩子源码
- 告诉大家一个如何收藏自己喜爱网址的方法
- .net下C# word文档导入导出
- 一个难题:关于C#窗体控件
- 求助:在同一线程写入再读取Cookie的问题
- 一个超级奇怪的问题,多个 if 语句执行,执行完一个if 后,监视时的光标竟然跳到下一个else if 的最后一句,执行,换成了switch ,在一个
- 我知道一个网络上的mdb数据库路径,但是该目录似乎取消了读取权限,怎么解决
- C#如何写绑定mac地址和ip地址
- 哪位仁兄告诉我有关图象处理的信息
using System;
using System.Text.RegularExpressions;
public class StripHTMLTest{
public static void Main(){
string s=StripHTML("<HTML><HEAD><TITLE>中国石龙信息平台</TITLE></HEAD><BODY>faddfs龙信息平台</BODY></HTML>");
Console.WriteLine(s);
} public static string StripHTML(string strHtml){
string [] aryReg ={
@"<script[^>]*?>.*?</script>", @"<(\/\s*)?!?((\w+:)?\w+)(\w+(\s*=?\s*(([""'])(\\[""'tbnr]|[^\7])*?\7|\w+)|.{0})|\s)*?(\/\s*)?>",
@"([\r\n])[\s]+",
@"&(quot|#34);",
@"&(amp|#38);",
@"&(lt|#60);",
@"&(gt|#62);",
@"&(nbsp|#160);",
@"&(iexcl|#161);",
@"&(cent|#162);",
@"&(pound|#163);",
@"&(copy|#169);",
@"&#(\d+);",
@"-->",
@"<!--.*\n"
}; string [] aryRep = {
"",
"",
"",
"\"",
"&",
"<",
">",
" ",
"\xa1",//chr(161),
"\xa2",//chr(162),
"\xa3",//chr(163),
"\xa9",//chr(169),
"",
"\r\n",
""
}; string newReg =aryReg[0];
string strOutput=strHtml;
for(int i = 0;i<aryReg.Length;i++){
Regex regex = new Regex(aryReg[i],RegexOptions.IgnoreCase);
strOutput = regex.Replace(strOutput,aryRep[i]);
}
strOutput.Replace("<","");
strOutput.Replace(">","");
strOutput.Replace("\r\n","");
return strOutput;
}
}
<a>1123</a>
<a>123</a>
<a>132</a>";System.Text.RegularExpressions.Regex re = new System.Text.RegularExpressions.Regex(@"^(<([^>]+)>)?(.*?)(<([^>]+)>)?\s*$");
string[] ss = s.Split('\n');
foreach (string s2 in ss)
{
System.Text.RegularExpressions.Match m = re.Match(s2);
if (m.Success)
Response.Write(m.Groups[3].Value+"<br>");
}