由于第一次处理网页数据,很多东西不懂,希望各位大神指教!=.=
但是下面的代码在笔者机器上成功运行并得到目标结果,有需要的可以参考.
完整的html代码不贴了,只贴需要操作的html部分:
<ul>
XMin: 471693.638132605<br/>
YMin: 4232141.47862875<br/>
XMax: 505560.37253274<br/>
YMax: 4251694.22606757<br/>
Spatial Reference: 21481<br/>
</ul>
如上html所示,最后要得到的目标是提取这块代码中的数字串.如下
471693.638132605 4232141.47862875 505560.37253274 4251694.22606757
C#代码如下:
string pageHtml;
string url = "";//输入url
try
{
WebClient myWeb = new WebClient( );//WebClient()根据特定url获取文件
myWeb.Credentials = CredentialCache.DefaultCredentials;//获取身份检测的凭证
Byte [ ] pageData = myWeb.DownloadData( url );
//string pageHtml = Encoding.Default.GetString( pageData );
pageHtml = Encoding.UTF8.GetString( pageData );
<span style="white-space:pre"> </span>//下面是正则匹配过程
string var = Regex.Match( pageHtml , @"XMin:\s\d{0,}.\d{0,}<br/>\nYMin:\s\d{0,}.\d{0,}<br/>\nXMax:\s\d{0,}.\d{0,}<br/>\nYMax:\s\d{0,}.\d{0,}<br/>\n" ).Value;
var = Regex.Replace( var , @"XMin:\s" , "" );
var = Regex.Replace( var , @"YMin:\s" , "" );
var = Regex.Replace( var , @"XMax:\s" , "" );
var = Regex.Replace( var , @"YMax:\s" , "" );
var = Regex.Replace( var , @"<br/>" , "" );
var = Regex.Replace( var , @"\s" , " " );
Console.WriteLine( var );
Console.ReadLine( );
}
catch( WebException webEx )
{
Console.WriteLine( webEx.Message.ToString( ) );
}
执行上诉代码后得到的结果如下所示:
471693.638132605 4232141.47862875 505560.37253274 4251694.22606757
更多推荐
C#根据特定URL网址获取网页源码(完整html代码)后用正则式匹配得到目标串
发布评论