从html源码中截取字符串

最后更新:2023-10-18 21:03:03 | 状态:未完成
        //放多情况下我们并不需要复杂的标签内容,只需要截取几个关键字
        //如提取商品名称和商品价格,而这两个值有可能是根其他内容混在一块的
        //如以下这段源码
        String html ="<div class='title' data-product='1001'>商品名称(限时)</div>"
        +"<div class='price'>一个货币符号:100.00</div>";
        //这时可以通过字符串截取的方式提取出价格
        //第0个参数:源数据
        //第1个到倒数第2个参数:100.00(就是我们要提取的价格) 之前出现的关键字
        //最后1个参数:100.00之后出现的第1个关键字

        //参数顺序:  源码,k1,k2,k3,kn-1,内容,kn

        String price = RegularUtil.cut(html, "price",":","</div>");
        log.warn("价格:{}",price);

        //许多情况下price有可能在源码中出现多次,这时需要多个关键字的组合来确认100.00的位置

        html = DateUtil.format("yyyy-MM-dd")+ "<div class='title' data-product='1001'>商品名称(限时)</div>" +
                "div class='src-price price'></div>" +
                "<div class='price'>一个货币符号:100.00</div>元";

        price = RegularUtil.cut(html,"src-price","price", "price",":","</div>");
        log.warn("价格:{}",price);

        //如果需要提取的内容在最后 如上面的单位:元
        String unit = RegularUtil.cut(html,"src-price","price", "price",":","</div>", RegularUtil.TAG_END);
        log.warn("单位:{}", unit);

        //同样的如果需要提取的内容在最开始位置 如上面的日期

        String ymd = RegularUtil.cut(html, RegularUtil.TAG_BEGIN, "<");
        log.warn("日期:{}", ymd);
最近更新 搜索 提交