首页  >  问答  >  正文

java - 如何用正则提取html内容

雷雷
習慣沉默習慣沉默2712 天前457

全部回复(2)我来回复

  • 伊谢尔伦

    伊谢尔伦2017-05-17 10:08:13

    可以使用jsoup和regex, 推荐使用jsoup!
    jsoup document:
    https://jsoup.org/cookbook/in...
    http://www.open-open.com/jsoup/

    
        import org.jsoup.Jsoup;
        import org.jsoup.nodes.Document;
        import org.jsoup.nodes.Element;
        
        import java.util.regex.Matcher;
        import java.util.regex.Pattern;
        
        public class Main {
        
            public static void main(String[] args) {
        
                // 方法1: jsoup
                String html = "<p class=\"info-detail-head-classify-subname\"><a id=\"info_detail_head_classify_type\" href=\"\" target=\"_blank\">财富</a></p>";
        
                Document doc = Jsoup.parse(html);
                Element element = doc.getElementById("info_detail_head_classify_type");
                System.out.println(element.text());
        
                // 方法2: regex
                Pattern r = Pattern.compile("<a.*>(.*)</a>");
                Matcher m = r.matcher(html);
                if (m.find()) {
                    System.out.println(m.group(1));
                }
            }
        }
    

    回复
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-17 10:08:13

    <a[^>]*>([^<]*)</a>
    

    <a></a>中的内容

    回复
    0
  • 取消回复