<li id="student" class="c1">
<span>家庭住址:</span>
<div>
<em>四川成都</em> <i class="c2">|</i> 
 
 
</div>
</li>
想匹配出:四川成都,这个正则怎么写?谢了

解决方案 »

  1.   


    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="gb2312" />
    <title></title>
    <style>
    </style>
    </head>
    <body>
    <li id="student" class="c1">
    <span>家庭住址:</span>
    <div>
    <em>四川成都</em> <i class="c2">|</i>  
     
     
    </div>
    </li> <script>
    function $(el){
    return typeof el == 'string' ? document.getElementById(el) : el;
    }

    var s = $('student').innerHTML;
    var re = /<em>(.+)<\/em>/g;
    re.test(s);
    alert(RegExp.$1)



    </script>
    </body>
    </html>
      

  2.   

    谢谢你,我不是要js的正则,我想要再.aspx.cs中写得正则
    [/Quote]
      

  3.   

    string s = @"<li id=""student"" class=""c1"">
    <span>家庭住址:</span>
    <div>
    <em>四川成都</em> <i class=""c2"">|</i>  
     
     
    </div>
    </li>";
    Match match = Regex.Match(s, @"(?is)<li id=""student"".*?<em>(.+?)</em>");
    Response.Write(match.Groups[1].Value);
      

  4.   

    我也顺便请求一下牛人正则表达式啊,我下面的内容出[{"BonusNumberString":"3,9,2,7,1|2|5","BonusTime":"2012-02-25 12:30","IssueNumber":"20120225-039"},{"BonusNumberString":"3,5,7,4,4|2|5","BonusTime":"2012-02-25 12:20","IssueNumber":"20120225-038"},{"BonusNumberString":"8,4,0,2,4|2|5","BonusTime":"2012-02-25 12:10","IssueNumber":"20120225-037"}]要取出 39271 ,2012-02-25 12:30 ,20120225-039这个怎么取啊
      

  5.   

    这样好像也不唯一,如果
    <li id="student" class="c1">
    <span>家庭住址:</span>
    <div>
    <em>四川成都</em> <i class="c2">|</i>  
     
     
    </div>
    </li>
    这底下在出现一对
    <li class="c3">
    <span>升高:</span><em>172</em>cm
    </li>
    然后我想匹配出“四川成都”谢谢
      

  6.   


                Match match = Regex.Match(s, @"<em>(.*?)</em>");
                string gets = "";            while (match.Success)
                {
                    for (int i = 0; i < match.Groups.Count; i++)
                    {
                        Group group = match.Groups[i];
                        gets += match.Groups[i+1].Value+"|";//四川成都|172 ,加了个分隔符|
                    }
                    //进行下一次匹配
                    match = match.NextMatch();
                }
      

  7.   

    string s = @"<li id=""student"" class=""c1"">
    <span>家庭住址:</span>
    <div>
    <em>四川成都</em> <i class=""c2"">|</i>  
     
     
    </div>
    </li>
    <li class=""c3"">
    <span>升高:</span><em>172</em>cm
    </li>
    ";
    MatchCollection matches = Regex.Matches(s, @"(?is)<li[^>]*>.*?<em>(.+?)</em>.*?</li>");
    foreach (Match match in matches)
    Response.Write(match.Groups[1].Value + "<br/>");