如何用正则提取html内容

    <p class="info-detail-head-classify-subname"><a id="info_detail_head_classify_type" href="" target="_blank">财富</a></p>
    
    
    想用java 提取财富两个字 请问用正则怎么提取 

    用jsoup会不会简单一点
阅读 5.6k
2 个回答

可以使用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));
            }
        }
    }
<a[^>]*>([^<]*)</a>

<a></a>中的内容

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题