java正則替換img標簽中src值的方法
更新時間:2018年06月01日 09:12:48 作者:君樂科技
今天小編就為大家分享一篇java正則替換img標簽中src值的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
主要功能是: 替換html字符串中img標簽src的值.
代碼如下:
package com.junlenet.common.util; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * html處理工具類 * @author huweijun * @date 2016年7月13日 下午7:25:09 */ public class HtmlUtils { /** * 替換指定標簽的屬性和值 * @param str 需要處理的字符串 * @param tag 標簽名稱 * @param tagAttrib 要替換的標簽屬性值 * @param startTag 新標簽開始標記 * @param endTag 新標簽結(jié)束標記 * @return * @author huweijun * @date 2016年7月13日 下午7:15:32 */ public static String replaceHtmlTag(String str, String tag, String tagAttrib, String startTag, String endTag) { String regxpForTag = "<\\s*" + tag + "\\s+([^>]*)\\s*" ; String regxpForTagAttrib = tagAttrib + "=\\s*\"([^\"]+)\"" ; Pattern patternForTag = Pattern.compile (regxpForTag,Pattern. CASE_INSENSITIVE ); Pattern patternForAttrib = Pattern.compile (regxpForTagAttrib,Pattern. CASE_INSENSITIVE ); Matcher matcherForTag = patternForTag.matcher(str); StringBuffer sb = new StringBuffer(); boolean result = matcherForTag.find(); while (result) { StringBuffer sbreplace = new StringBuffer( "<"+tag+" "); Matcher matcherForAttrib = patternForAttrib.matcher(matcherForTag.group(1)); if (matcherForAttrib.find()) { String attributeStr = matcherForAttrib.group(1); matcherForAttrib.appendReplacement(sbreplace, startTag + attributeStr + endTag); } matcherForAttrib.appendTail(sbreplace); matcherForTag.appendReplacement(sb, sbreplace.toString()); result = matcherForTag.find(); } matcherForTag.appendTail(sb); return sb.toString(); } public static void main(String[] args) { StringBuffer content = new StringBuffer(); content.append("<ul class=\"imgBox\"><li><img id=\"160424\" src=\"uploads/allimg/160424/1-160424120T1-50.jpg\" class=\"src_class\"></li>"); content.append("<li><img id=\"150628\" src=\"uploads/allimg/150628/1-15062Q12247.jpg\" class=\"src_class\"></li></ul>"); System.out.println("原始字符串為:"+content.toString()); String newStr = replaceHtmlTag(content.toString(), "img", "src", "src=\"http://junlenet.com/", "\""); System.out.println(" 替換后為:"+newStr); } }
以上這篇java正則替換img標簽中src值的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Spring/Spring Boot 中優(yōu)雅地做參數(shù)校驗拒絕 if/else 參數(shù)校驗
這篇文章主要介紹了Spring/Spring Boot 中優(yōu)雅地做參數(shù)校驗拒絕 if/else 參數(shù)校驗,本文使用最新的 Spring Boot 版本 2.4.5,通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下2021-04-04專屬于程序員的浪漫-Java輸出動態(tài)閃圖iloveyou
這篇文章主要介紹了專屬于程序員的浪漫-Java輸出動態(tài)閃圖iloveyou,具有一定參考價值,需要的朋友可以了解下。2017-11-11Java數(shù)據(jù)結(jié)構(gòu)之稀疏矩陣定義與用法示例
這篇文章主要介紹了Java數(shù)據(jù)結(jié)構(gòu)之稀疏矩陣定義與用法,結(jié)合實例形式分析了java稀疏矩陣的定義、運算、轉(zhuǎn)換等相關(guān)操作技巧,需要的朋友可以參考下2018-01-01IntelliJ?IDEA運行SpringBoot項目的詳細步驟
這篇文章主要介紹了IntelliJ?IDEA如何運行SpringBoot項目,步驟一配置maven,步驟二配置JDK環(huán)境,緊接著通過步驟三檢查數(shù)據(jù)庫的配置,最后一步數(shù)據(jù)庫連接,本文給大家介紹的非常詳細,需要的朋友可以參考下2022-08-08Java中Collection與Collections的區(qū)別詳解
這篇文章主要為大家詳細介紹了Java中Collection與Collections的區(qū)別,文中有詳細的代碼示例,具有一定的參考價值,感興趣的同學(xué)可以參考一下2023-06-06Spring事務(wù)管理下synchronized鎖失效問題的解決方法
這篇文章主要給大家介紹了關(guān)于Spring事務(wù)管理下synchronized鎖失效問題的解決方法,文中通過示例代碼介紹的非常詳細,對大家學(xué)習或者使用Spring具有一定的參考學(xué)習價值,需要的朋友可以參考下2022-03-03