日期:2014-05-18  浏览次数:20707 次

请教正则表达式问题
HTML code
<tr>
            <td align="center" class="subboxrb">
                5.00
            </td>
            <td align="center" class="subboxrb">
                正常
            </td>
            <td align="center" class="subboxrb">
                20121231000000
            </td>
        </tr>



我想取出5.00这个值,我的代码如下
C# code

string content = System.Web.HttpUtility.HtmlDecode(reader.ReadToEnd());

            string strBalance = "";
            string strBalanceLeft = "<td align=\"center\" class=\"subboxrb\">";
            string strBalanceRight = "</td>";
            string strBalanceReguelar = strBalanceLeft + "(.*?)" + strBalanceRight;

            MatchCollection collBalance = Regex.Matches(content, strBalanceReguelar);

            if (collBalance != null && collBalance.Count != 0)
            {
                strBalance = collBalance[0].Value;
                strBalance = strBalance.Replace(strBalanceLeft, "");
                strBalance = strBalance.Replace(strBalanceRight, "");
            }


但是匹配不到,不知什么原因,请指点,谢谢

------解决方案--------------------
因为你没有匹配换行符号
C# code
 string strBalanceReguelar = strBalanceLeft + @"\s*(.*?)\s*" + strBalanceRight;