C# Regex 获取<table></table>的html

        [Fact]
        public void Regex_Test()
        {
            var rowHtml = @"<div class=\""container\"">
    <div class=\""title dottedline\"">XXXXXX股份有限公司-受益所有人查询结果</div>
</div>
<div class=\""container\"">
    <table class=\""gridtable\"">
        <tr>
            <th>序号</th>
            <th>名称</th>
            <th>注册币种</th>
            <th>成立日期</th>
            <th>注册资本</th>
            <th>统一社会信用代码</th>
            <th>持股占比</th>
            <th>投资类型描述</th>
            <th>是否上市</th>
            <th>是否是受益人</th>
            <th>受益人类型</th>
            <th>职务</th>
        <tr>
        <tr>
            <td>1</td>
            <td>XXXXXX股份有限公司</td>
            <td>人民币元</td>
            <td>1985-11-22</td>
            <td>35640625.708900</td>
            <td>91100000100003962T</td>
            <td></td>
            <td></td>
            <td>是</td>
            <td>否</td>
            <td></td>
            <td></td>
        </tr>
        <tr>
            <td>2</td>
            <td>铎梦之</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td>是</td>
            <td>关键管理人员</td>
            <td>董事</td>
        </tr>
    </table>
</div>";
            if (!string.IsNullOrEmpty(rowHtml))
            {
                var regex = new Regex(@"<table.*?>[\s\S]*?<\/table>");
                var mc = regex.Matches(rowHtml);
                if (mc.Count > 0)
                {
                    foreach (var item in mc)
                    {
                        var tableHtml = item;
                        /*
                            <table class=\"gridtable\">
                                <tr>
                                    <th>序号</th>
                                    <th>名称</th>
                                    <th>注册币种</th>
                                    <th>成立日期</th>
                                    <th>注册资本</th>
                                    <th>统一社会信用代码</th>
                                    <th>持股占比</th>
                                    <th>投资类型描述</th>
                                    <th>是否上市</th>
                                    <th>是否是受益人</th>
                                    <th>受益人类型</th>
                                    <th>职务</th>
                                <tr>
                                <tr>
                                    <td>1</td>
                                    <td>XXXXXX股份有限公司</td>
                                    <td>人民币元</td>
                                    <td>1985-11-22</td>
                                    <td>35640625.708900</td>
                                    <td>91100000100003962T</td>
                                    <td></td>
                                    <td></td>
                                    <td>是</td>
                                    <td>否</td>
                                    <td></td>
                                    <td></td>
                                </tr>
                                <tr>
                                    <td>2</td>
                                    <td>铎梦之</td>
                                    <td></td>
                                    <td></td>
                                    <td></td>
                                    <td></td>
                                    <td></td>
                                    <td></td>
                                    <td></td>
                                    <td>是</td>
                                    <td>关键管理人员</td>
                                    <td>董事</td>
                                </tr>
                            </table>
                        */
                    }
                }

                Regex regTD = new Regex(@"(?<=<td>)(.*?)(?=</td>)", RegexOptions.IgnoreCase);//[^(<td>))] 
                var mc2 = regTD.Matches(rowHtml);
                if (mc2.Count > 0)
                {
                    var tdText = string.Empty;
                    foreach (var item in mc2)
                    {
                        tdText += $"{item},";
                    }
                    tdText = tdText.TrimEnd(new char[] { ',' });
                    /*
                     * 1,XXXXXX股份有限公司,人民币元,1985-11-22,35640625.708900,91100000100003962T,,,是,否,,,2,铎梦之,,,,,,,,是,关键管理人员,董事
                    */
                }

            }

        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值