请问如何来匹配一个字符串?<li>
<a href="Weather.asmx?op=GetWeatherByAreaCode">GetWeatherByAreaCode</a>
<span>
<br>根据城市区号返回Weather_Info类描述的城市天气情况.区号为整数,前面不要加
</span>
</li>比如上面的,我想匹配<li> 到</li>中间的所有字符,如何匹配呢?我觉得差不多应该是这样的: @"<li>[^(</li>)]+</li>"
但是这样好像不对哦,请高手指点,马上结贴
<a href="Weather.asmx?op=GetWeatherByAreaCode">GetWeatherByAreaCode</a>
<span>
<br>根据城市区号返回Weather_Info类描述的城市天气情况.区号为整数,前面不要加
</span>
</li>比如上面的,我想匹配<li> 到</li>中间的所有字符,如何匹配呢?我觉得差不多应该是这样的: @"<li>[^(</li>)]+</li>"
但是这样好像不对哦,请高手指点,马上结贴
解决方案 »
- C#使用什么报表比较方便?
- C#Winform和Flash交互的时候Flash将变量传递给C#的时候C#接受到<null/>和<undfined>
- session取得的数据如何处理
- httpwebrequest模拟登录 中国专家网博客,看似很简单,却登录不了
- C#导出相关:导出EXCEL,但为什么有的机子会导出正确的EXCEL,但是有的机子只会用IE强制打开,郁闷了很久了
- 如何实现定时发送邮件啊???
- 一道面试题 请大家帮忙作一下 我太菜了~~~
- 为什么关闭窗体Form1后没有Form2出现呢
- 如何取消线程池队列里的线程?
- 为什么js和c# 对正则表达式的验证结果不一样?
- 怎么用两个线程,同时让两个label 漂移起来
- ■■■■■■■■■■winform编译出来的exe文件为什么在网络路径下面运行不正正常,拷贝到本机就正常了那?
<li>
<a href="Weather.asmx?op=GetWeatherByAreaCode">GetWeatherByAreaCode</a>
<span>
<br/>根据城市区号返回Weather_Info类描述的城市天气情况.区号为整数,前面不要加
</span>
</li><li>
<a href="Weather.asmx?op=GetWeatherByAreaCode">GetWeatherByAreaCode</a>
<span>
<br/>根据城市区号返回Weather_Info类描述的城市天气情况.区号为整数,前面不要加
</span>
</li><li>
<a href="Weather.asmx?op=GetWeatherByAreaCode">GetWeatherByAreaCode</a>
<span>
<br/>根据城市区号返回Weather_Info类描述的城市天气情况.区号为整数,前面不要加
</span>
</li>关键是这里不止一个</li> 我要匹配第一个<li> </li>
比如:
<td height=50 style=padding-left:6px>2007年6月6日 星期三<br>
//******从这里 到下面 blu01ssssssss 的部分全部给替换掉
<a href=http://sms.sohu.com/book/book.php?id=26 target=_blank>
<font color=#CF6C06>黄历</font></a>
|<a href=http://sms.sohu.com/book/book.php?id=21 target=_blank>
<font color=#CF6C06>星座</font></a>
</td> </tr>
</table>
<table border=0 cellpadding=0 cellspacing=0 width=186 bgcolor=#ffffff>
<tr style=padding-bottom:8px>
<td width=100 align=center><a href="./city.php?city=上海" target=_blank><img src="http://img.sms.sohu.com/i/weather/images/yzdy_01.gif" width=83 height=65 alt=阴转多云 border=0 class=img2></a></td>
<td class=blu01ssssssss>阴转多云<br>
27℃~21℃<br>
东风3-4级从 上面 我做注释的地方到 blu01ssssssss 这一部分没有用,所有我就想用个简单的表达式把这一部分全部替换掉
<a如何定位,<td class=blu01ssssssss>这里的形式是固定的吗
正则表达式匹配回来是一个数组,第一组就是数组的0了
<table><li>
<a href="Weather.asmx?op=GetWeatherByAreaCode">GetWeatherByAreaCode</a>
<span>
<br/>根据城市区号返回Weather_Info类描述的城市天气情况.区号为整数,前面不要加
</span>
</li><li>
<a href="Weather.asmx?op=GetWeatherByAreaCode">GetWeatherByAreaCode</a>
<span>
<br/>根据城市区号返回Weather_Info类描述的城市天气情况.区号为整数,前面不要加
</span>
</li></table>如果想用你说的那个简单方法来匹配第一个<li> </li> 怎么写呢? 谢谢咯~
string resultStr = Regex.Replace(yourStr, @"(<table>[\s\S]*?)<li>[\s\S]*?</li>", "$1", RegexOptions.IgnoreCase);其中<table>只是按你的例子写的,实际应用中换成能够定位到这一table的字符串<li>[\s\S]*?</li> 这里的“?”是非贪婪模式,[\s\S]为匹配任意一个字符,这个正则的意思就是,从<li>开始匹配,匹配到第一次出现</li>为止
最简单答案:@"(?<=<li>).*?(?=</li>) "