Java中正則表達式去除html標簽
Java中正則表達式去除html的標簽,主要目的更精確的顯示內(nèi)容,比如前一段時間在做類似于博客中發(fā)布文章功能,當編輯器中輸入內(nèi)容后會將樣式標簽也傳入后臺并且保存數(shù)據(jù)庫,但是在顯示摘要的時候,比如顯示正文的前50字作為摘要,那么這時需要去除所有html標簽,然后在截取50字,所以就通過了Java正則表達式實現(xiàn)了如下方法,代碼如下:
注:這是Java正則表達式去除html標簽方法。
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";// 定義空格回車換行符 private static final String regEx_w = "<w[^>]*?>[\\s\\S]*?<\\/w[^>]*?>";//定義所有w標簽 /** * @param htmlStr * @return 刪除Html標簽 * @author LongJin */ public static String delHTMLTag(String htmlStr) { Pattern p_w = Pattern.compile(regEx_w, Pattern.CASE_INSENSITIVE); Matcher m_w = p_w.matcher(htmlStr); htmlStr = m_w.replaceAll(""); // 過濾script標簽 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(""); // 過濾空格回車標簽 htmlStr = htmlStr.replaceAll(" ", ""); //過濾 return htmlStr.trim(); // 返回文本字符串 }
ps:方法僅供參考,供大家一起互相學(xué)習(xí),若有不足或者疑問歡迎評論。
相關(guān)文章
Java上傳文件錯誤java.lang.NoSuchMethodException的解決辦法
今天小編就為大家分享一篇關(guān)于Java上傳文件錯誤java.lang.NoSuchMethodException的解決辦法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01Java Socket實現(xiàn)猜數(shù)字小游戲
這篇文章主要為大家詳細介紹了Java Socket實現(xiàn)猜數(shù)字小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-09-09SpringBoot動態(tài)導(dǎo)出word文檔實整教程(復(fù)制即可使用)
在我們做項目的時候會需要把數(shù)據(jù)庫中的數(shù)據(jù)導(dǎo)出到word當中,下面這篇文章主要給大家介紹了關(guān)于SpringBoot動態(tài)導(dǎo)出word文檔實整教程的相關(guān)資料,文中的代碼復(fù)制即可使用,需要的朋友可以參考下2023-06-06Springboot內(nèi)外部logback多環(huán)境配置詳解
本文主要介紹了Springboot內(nèi)外部logback多環(huán)境配置詳解,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01Java利用自定義注解、反射實現(xiàn)簡單BaseDao實例
下面小編就為大家?guī)硪黄狫ava利用自定義注解、反射實現(xiàn)簡單BaseDao實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-08-08log4j2 RollingRandomAccessFile配置過程
這篇文章主要介紹了log4j2 RollingRandomAccessFile配置過程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07