正则 截取固定开头结尾字符串中间的字符串


比如:class="g">topic.csdn.net/u/20091018/11/ef331a56-93f ... 2011-3-28 </span> - <a
其中以class="g">开头 ;</span> - <a结尾如何获取中间的字符串:topic.csdn.net/u/20091018/11/ef331a56-93f ... 2011-3-28  

 

        string str = "class="g">topic.csdn.net/u/20091018/11/ef331a56-93f ... 2011-3-28 </span> - <a";
        Regex reg = new Regex(@"(?s)(?<=class=&quot;g&quot;&gt;).*(?=&lt;/span&gt; - &lt;a)");
        foreach (Match m in reg.Matches(str))
        {
            Response.Write(m.Value + "<br/><br/><br/><br/>");
        }
//topic.csdn.net/u/20091018/11/ef331a56-93f ... 2011-3-28 

应多加个?,如下:
@"(?s)(?<=class=&quot;g&quot;&gt;).*?(?=&lt;/span&gt; - &lt;a)"

原因是str一般是网页的源码,里面相同的内容比较多,避免匹配多余的内容


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM