用正则表达式获取字符串
原代码如下
...
<span class="abc">产品名称</span>华为最新3G手机
<span class="abc">产品类别</span>手机类
...
我想获得 "华为最新3G手机" 也就是<span class="abc">产品名称</span>和<span class="abc">产品类别</span>之间的内容,如下所述:
<span class="abc">产品名称</span>
想获取的内容<span class="abc">产品类别</span>
怎么实现呢,谢谢大侠们!!!!!!!
------解决方案--------------------(?<=<span\sclass="abc">产品名称</span>)[^<]*(?=<span\sclass="abc">产品类别</span>)
------解决方案--------------------------解决方案--------------------(?is)(?<=</span>)[\s\S]*?(?=\s*<span[^>]*?>
------解决方案--------------------$)
------解决方案--------------------
System.IO.StreamReader reader = new System.IO.StreamReader("e:\\1.txt",Encoding.Default);
string str = reader.ReadToEnd();
string strmatch = @"<span class=""abc"">产品名称</span>([\S\s]+)<span class=""abc"">产品类别</span>";
System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(strmatch);
System.Text.RegularExpressions.Match m = reg.Match(str);
取m.Groups[1].Value
------解决方案--------------------
(?is)(?<=</span>)[^<]+
------解决方案--------------------用 Substring 好像也可以吧。
截取最后一个 “>”然后到字符串的结尾。
------解决方案--------------------