JAVA通過正則匹配html里面body標簽的內容,去掉body標簽


 

 

 /**
     *  獲取html中body的內容 包含body標簽
     * @param htmlStr  html代碼
     * @return
     */
    public static String getBody(String htmlStr){


        String pattern = "<body[^>]*>([\\s\\S]*)<\\/body>";

        Pattern p_body = Pattern.compile(pattern, Pattern.CASE_INSENSITIVE);
        Matcher m_body = p_body.matcher(htmlStr);
        if (m_body.find()){
            return m_body.group();
        }
        return htmlStr;
    }


    /**
     * 取到html中body里面的內容 不包含body標簽
     * @param htmlStr
     * @return
     */
    public static String removeBody(String htmlStr){

        /**
         * 獲取html代碼中body標簽里的內容
         */
        htmlStr=getBody(htmlStr);

        //body開頭標簽
        String bodyEx_start = "<body[^>]*>";

        //body結尾標簽
        String bodyEx_end = "<\\/body>";

        Pattern p_script = Pattern.compile(bodyEx_start, Pattern.CASE_INSENSITIVE);
        Matcher m_script = p_script.matcher(htmlStr);
        htmlStr = m_script.replaceAll(""); // 過濾script標簽

        Pattern p_style = Pattern.compile(bodyEx_end, Pattern.CASE_INSENSITIVE);
        Matcher m_style = p_style.matcher(htmlStr);
        htmlStr = m_style.replaceAll(""); // 過濾style標簽



        return htmlStr;
    }

 

 

 

 

如果要取得html代碼中body里面的內容 不包含body標簽

直接調用 removeBody

 
        

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM