当前位置: 代码迷 >> ASP.NET >> 用正则表达式分离字符串中内容
  详细解决方案

用正则表达式分离字符串中内容

热度:596   发布时间:2013-02-25 00:00:00.0
求助:用正则表达式分离字符串中内容
希望用正则式 分别 提取下面字符串中红色的部分的内容,谢谢


<div id="ctl00_conLeft_divInfro" class="txt_Left"><ul><li><span class="tit">主讲人:<a href="/Teacher/TeacherInfo.aspx?Hid=160" title="查看TA的主页">李宁</a></span></li><li><span class="tit">主讲人介绍:</span>北京市学院路中学数学教师,北京市海淀区数学学科区级骨干教师。在北京市教师基本功展示活动中获二等奖。教学风格亲切,深受学生喜爱。</li></ul></div>

------解决方案--------------------------------------------------------
C# code
string tempStr = File.ReadAllText(@"C:\Documents and Settings\Administrator\桌面\Test.txt", Encoding.GetEncoding("GB2312"));//读取txt                string pattern = @"(?i)<span[^>]*?class=(['""]?)tit\1[^>]*?>[\s\S]*?<a[^>]*?href=(['""]?)[^'""]*?\?Hid=(?<Hid>\d+)[^'""]*?\2[^>]*?>(?<a_text>[^<>]+?)</a>";                pattern += @"[\s\S]*?<span[^>]*?class=(['""]?)tit\3[^>]*?>(?<value>[\s\S]*?)</li>";                foreach (Match m in Regex.Matches(tempStr, pattern))                {                    //循环输出                    string v1 = m.Groups["Hid"].Value;//160                    string v2 = m.Groups["a_text"].Value;//李宁                    string v3 = m.Groups["value"].Value;//主讲人介绍:</span>北京市学院路中学数学教师,北京市海淀区数学学科区级骨干教师。在北京市教师基本功展示活动中获二等奖。教学风格亲切,深受学生喜爱。                                   }