Android之去掉文字內容的HTML標籤
啥也不說了,直接上程式碼吧!
/**
* 移除文字中的HTML標籤
*/
public class HtmlUtil {
private static final String regEx_script = "<script[^>]*?>[\\s\\S]*?<\\/script>"; // 定義script的正規表示式
private static final String regEx_style = "<style[^>]*?>[\\s\\S]*?<\\/style>"; // 定義style的正規表示式
private static final String regEx_html = "<[^>]+>"; // 定義HTML標籤的正規表示式
private static final String regEx_space = "\\s*|\t|\r|\n";//定義空格回車換行符
public static void test() {
String str = "<p> </p><p style="white-space: normal;"> 廖姓,是炎黃子孫的重要宗族,得姓已逾4000多年。</p><p style="white-space: normal;"> 自從盤古來天地,三皇五帝代如今,中華名族綿延繁衍,為人類創造了燦爛的文化。炎帝和皇帝,是中華兒女的共同祖先。炎帝,即傳說中的神農氏,生於渭河流域的姜水,故姓姜;皇帝即傳說中的軒轅氏,發祥於涇河流域的姬水,故姓姬。炎帝和皇帝;是中國最早的有姓者。爾後不斷派衍,至今已達2500餘個姓(一說8000餘個姓)。</p><p style="white-space: normal;">姓的得來,除氏族圖騰,始祖母的某種遭遇或夢幻,始祖母的生育地點等外,今天繁雜分壇的“百家姓”,有的以祖先封國為姓,有的以祖先的字、號、名為姓,有的以封邑、食邑和居住地命名,有的以官職、爵位命名,有的以黃帝賜姓、貶姓,還有的因避諱產生的姓,以技為姓,以天干地支為姓,林林總總,不一而足。</p><p style="white-space: normal;"> 廖姓最早發源於河南省境內。廖姓歷史上最大的郡望“汝南郡”早期即出此地,當時河南廖姓之昌榮,自不必言。秦漢之際,廖姓始有遷往周邊地區者。伯廖一支形成巨大鹿望郡。另有汝南廖姓後裔廖惠避秦之亂而遷河南(據《廖氏源流序》)。魏晉南北朝時期,繼“永嘉之亂”始,北方廖姓大6舉南遷,此期,廖惠後裔廖化自襄陽(金湖北省襄樊)遷入四川,是為入蜀始祖。傳自廖延齡,任武威(今屬甘肅省)太守。另有晉代隱士廖堂,將樂(今屬福建省)人,為最早入閩者。唐時,入閩者甚眾。唐初有廖姓隨陳元光父子開漳入閩,唐末有廖姓隨王潮、王審知入閩。廖惠一支傳至廖崇德,壬江西虔化令,其後人又有遷居福建汀州寧化石壁寨,進而遷上杭等地者。宋代,廖姓已是福建大姓,名士輩出。元代以前廖惠一支遷徙情況,《興廖氏族譜》所述較為明晰:“其先祖世居汝南,魏晉南北朝時,因北方之亂,播遷於江南各地。唐時其祖由江西雩都,避唐末之亂,遷於福建汀州寧化石壁寨。後子孫因亂,又遷順昌,廖氏居於閩者益眾。至宋末,再由寧化經長汀、上杭、永定,而入廣東--大埔、梅縣、興寧、五華等地區。”明代,山西大槐樹廖姓分遷於河南、河北、江蘇、北京等地。清代,閩粵廖姓有入臺進而移居泰國、新加坡等地者。今日廖姓以江西、湖南、四川、廣西、廣東等省居多,上述五省廖姓約佔全國漢族廖姓人口的百分之七十三。廖姓是當地今中國姓氏排行第六十六位的大姓,人口較多,約佔全國漢族人口的百分之零點三四。</p><p><br/></p><p> </p><p style="white-space: normal;"> ";
System.out.println("HTML DECODE結果----->" + htmlDecode(str));
}
/**
* @param htmlStr
* @return 刪除Html標籤
*/
public static String delHTMLTag(String htmlStr) {
Pattern p_script = Pattern.compile(regEx_script, Pattern.CASE_INSENSITIVE);
Matcher m_script = p_script.matcher(htmlStr);
htmlStr = m_script.replaceAll(""); // 過濾script標籤
Pattern p_style = Pattern.compile(regEx_style, Pattern.CASE_INSENSITIVE);
Matcher m_style = p_style.matcher(htmlStr);
htmlStr = m_style.replaceAll(""); // 過濾style標籤
Pattern p_html = Pattern.compile(regEx_html, Pattern.CASE_INSENSITIVE);
Matcher m_html = p_html.matcher(htmlStr);
htmlStr = m_html.replaceAll(""); // 過濾html標籤
Pattern p_space = Pattern.compile(regEx_space, Pattern.CASE_INSENSITIVE);
Matcher m_space = p_space.matcher(htmlStr);
htmlStr = m_space.replaceAll(""); // 過濾空格回車標籤
return htmlStr.trim(); // 返回文字字串
}
public static String getTextFromHtml(String htmlStr) {
htmlStr = delHTMLTag(htmlStr);
htmlStr = htmlStr.replaceAll(" ", "");
return htmlStr;
}
/**
* html 編碼
* @param source
* @return
*/
public static String htmlEncode(String source) {
if (source == null) {
return "";
}
String html = "";
StringBuffer buffer = new StringBuffer();
for (int i = 0; i < source.length(); i++) {
char c = source.charAt(i);
switch (c) {
case '<':
buffer.append("<");
break;
case '>':
buffer.append(">");
break;
case '&':
buffer.append("&");
break;
case '"':
buffer.append(""");
break;
case ' ':
buffer.append(" ");
break;
default:
buffer.append(c);
}
}
html = buffer.toString();
return html;
}
/**
* html 解碼
* @param source
* @return
*/
public static String htmlDecode(String source) {
if (TextUtils.isEmpty(source)) {
return "";
}
source = source.replace("<", "<");
source = source.replace(">", ">");
source = source.replace("&", "&");
source = source.replace(""", "\"");
source = source.replace(" ", " ");
source = source.replace("“", "\"");
source = source.replace("”", "\"");
return getTextFromHtml(source);
}
}
相關文章
- php去掉欄位文字的所有html標籤PHPHTML
- Sql Server資料庫如何去掉內容裡面的Html標籤SQLServer資料庫HTML
- Mysql去掉html標籤函式MySqlHTML函式
- html文字相關標籤HTML
- html文字修飾標籤HTML
- html中a標籤的下劃線怎麼去掉HTML
- HTML之常用標籤HTML
- HTML之表格標籤HTML
- HTML之框架標籤HTML框架
- 去html標籤,只取純文字HTML
- html5文字標籤HTML
- PbootCMS可使用的列表標籤內容tags標籤呼叫boot
- HTML之簡單標籤HTML
- HTML之表單標籤HTML
- python爬蟲用bs4獲取標籤中間的文字內容以及標籤裡的屬性Python爬蟲
- HTML標籤(基本標籤的使用)HTML
- html中p標籤內為何不能巢狀div標籤?HTML巢狀
- HTML <a> 標籤HTML
- html標籤HTML
- HTML 的常用標籤HTML
- html的基本標籤HTML
- html <a>標籤的妙用HTML
- HTML字元實體與文字格式化標籤HTML字元
- HTML標籤之form,input,button,tableHTMLORM
- HTML5 之語義標籤HTML
- 跳轉個人主頁的指定標籤內容
- html標籤整理HTML
- HTML 常用標籤HTML
- HTML <label> 標籤HTML
- HTML <body>標籤HTML
- html基本標籤HTML
- HTML <div>標籤HTML
- html列表標籤HTML
- HTML <meta>標籤HTML
- HTML <iframe>標籤HTML
- HTML <span>標籤HTML
- HTML <head>標籤HTML
- HTML <figcaption> 標籤HTMLGCAPT