1. 程式人生 > >JAVA處理html標籤

JAVA處理html標籤

package com.nfa;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class UtilHtml {
	
	/*刪除所有HTML標籤,返回純文字*/
	public static String deleteAll(String html){
		if(isBlank(html)){
			return "";
		}
		Pattern p = Pattern.compile("<([^>]*)>");
		Matcher m = p.matcher(html);
		return m.replaceAll("");
	}
	
	/*刪除指定單標籤*/
	public static String deleteTagsOfOne(String tag,String html){
        String regxp = "<\\s*" + tag + "\\s+([^>]*)\\s*>";   
        Pattern p = Pattern.compile(regxp);   
        Matcher m = p.matcher(html);   
        StringBuffer sb = new StringBuffer();   
        boolean rs = m.find();   
        while (rs) {   
            m.appendReplacement(sb, "");   
            rs = m.find();   
        }   
        m.appendTail(sb);   
        return sb.toString();   	
	}
	
	/*刪除指定成對標籤*/
	public static String deleteTagsOfTwo(String tag,String html){
		if(isBlank(html)){
			return html;
		}
		Pattern p = Pattern.compile("<"+tag+"[^>]*?>[\\s\\S]*?<\\/"+tag+">");
		Matcher m = p.matcher(html);
		return m.replaceAll("");		
	}	
	
	/*刪除指定的屬性*/
	public static String deleteAttr(String attr,String html){
		if(isBlank(html)){
			return html;
		}
		Pattern p = Pattern.compile(attr+"=\"([^\"]+)\"");
		Matcher m = p.matcher(html);
		return m.replaceAll("");
	}
	
	/*刪除所有空白字元*/
	public static String deleteAllBlank(String html){
		if(isBlank(html)){
			return html;
		}
		Pattern p = Pattern.compile("[\\s| ]");
		Matcher m = p.matcher(html);
		return m.replaceAll("");
	}
	
	private static boolean isBlank(String str){
		if(str!=null && str.trim().length()>0){
			return false;
		}else{
			return true;
		}
	}
}

相關推薦

JAVA處理html標籤

package com.nfa; import java.util.regex.Matcher; import java.util.regex.Pattern; public class UtilHtml { /*刪除所有HTML標籤,返回純文字*/ publi

Javahtml標籤的過濾和清洗

OWASP HTML Sanitizer 是一個簡單快捷的java類庫,主要用於放置XSS 優點如下:   1.使用簡單。不需要繁瑣的xml配置,只用在程式碼中少量的編碼   2.由Mike Samuel(谷歌工程師)維護   3.通過了AntiSamy超過95%的UT覆蓋   4.高效能,低記憶體

如何處理HTML標籤屬性

當我們對頁面進行操作的時候,常常需要對HTML標籤屬性(tag attribute)進行處理,這包括獲取某個標籤屬性的值,或者對某個標籤屬性的值進行設定。在jQuery裡我們可以通過.attr()的方法來實現。 1. 獲取標籤屬性的值 (演示) 語法:$('選定目標').attr('屬性名') 例子如下:

親測java清除html標籤

 String regEx_script="<script[^>]*?>[\\s\\S]*?<\\/script>"; //定義script的正則表示式          String regEx_style="<style[^>]

java處理html空格變成問號問題

昨天發現,用 HtmlDecode() 去解碼後,“&nbsp;”不是被解碼為半形的空格(ASCII碼0x20)而是變成半形問號“?”(ASCII碼0x3F)。而且奇怪的是,只有每行前面的空格才會出問題,如果前面後面有漢字的話,空格就還是空格。但是更加奇怪的是,如果

C# 處理html 標籤一些正則表示式 整理收集

1:取得A 標籤中的內容或者 url title <a href='javascript:open_window("http://xx/F/F987K71CHH3JEBIG788IQ2BTRSULYAIY2PFXEXGBB7Q5614QM1-05893?func=se

Java去掉HTML標籤

public static String stripHtml(String content) {     // <p>段落替換為換行     content = content.replaceAll("<p .*?>", "\r\n");    

java實現HTML標籤轉義和反轉義(StringEscapeUtils)

轉義:有時需要對帶有格式的長文字(如個人文章或評論等)進行轉義後儲存到資料庫表中。       例如:String EsHtml="<p>我的<br/>評論</p>";                  轉義後為"&lt;p&am

Java後臺怎麼處理HTML標籤(富文字)資料的兩種方法

前言:本人在實現業務邏輯的時候,需要在後臺把帶HTML標籤(富文字)資料的文章擷取成文章的摘要,涉及到怎麼處理帶HTML標籤資料 ,在網上一共找到了兩種解決方法:1、呼叫HtmlParser外掛HtmlParser 簡介htmlparser是一個純的java寫的html解析的

java 使用jsoup處理html字符

att nbsp 遍歷 src class clas element pen 上班 依賴的jar <dependency> <groupId>org.jsoup</groupId> <

Java去除基本的HTML標籤

// 去除基本的標籤     public static String replaceHtmlBasicTag(String content, String replacement) {         S

Java String去除HTML標籤

public String RmHtml(String s) { if (!s.equals("") || s != null) { String str = s.replaceAll("<[.[^<]]*>", ""); return

從文字中提取圖片路徑(java 解析富文字處理 img 標籤

很多專案都需要到富文字來新增內容,就好比新聞啊,旅遊景點之類的,都需要使用富文字去新增資料,然而怎麼我這邊就發現了兩個問題 怎樣將富文字的圖片的 src 獲取出來? 方法一: 利用正則表示式: public static List<String> getImgStr(String h

jsp中顯示包含html標籤等特殊字元的處理方式

如果需要對這些包含html標籤的特殊字元進行原樣輸出,目前發現有以下兩種方法: 1.${fn:escapeXml("<p>包含特殊字元,但escapeXml=false</p>")} 2.<c:out value="<p>包含特殊字

java/android 正則表示式去除所有HTML標籤

protected string str = "<table><tr><td>sdasasdsdd</td></tr></table><br><p>sds</p>&l

Java 獲取Html文字中的img標籤下src中的內容

/** * 得到網頁中圖片的地址 * @param htmlStr html字串 * @return List<String> */ private List<String> getImgStr(String

過濾HTML標籤java工具類

廢話不說,直接上碼: package test; import java.util.regex.Matcher;    import java.util.regex.Pattern;       /**    * &

java替換包含html標籤

說明一下,該文件內容抄自開源中國裡的謀篇文章,由於抄襲時間過於久遠,已經找不到博主了!暫不能說明出處,原始碼博主看見勿氣,皆可聯絡本人! 我的部落格,文章屬於個人收藏,以解日後需要之急! package q; import java.util.regex.Matcher; import ja

Java中正則表示式去除html標籤

    注:這是Java正則表示式去除html標籤方法。     private static final String regEx_script = "<script[^>]*?>[\\s\\S]*?<\\/script>"; // 定義sc

關於java 獲取 html select標籤 下拉框 option 文字內容 隱藏域

在HTML中從多選下拉框中提取已選中選項的文字內容到後臺,被這個問題難倒了。 demo.jsp檔案<select id="selecttype" name"type"> <option value="" selected="selected">