java正则替换img标签中src值的方法

网友投稿 290 2023-08-01

java正则替换img标签中src值的方法

主要功能是: 替换html字符串中img标签src的值.

代码如下:

package com.junlenet.common.util;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

/**

* html处理工具类

* @autAdQtStQhor huweijun

* @date 2016年7月13日 下午7:25:09

*/

public class HtmlUtils {

/**

* 替换指定标签的属性和值

* @param str 需要处理的字符串

* @param tag 标签名称

* @param tagAttrib 要http://替换的标签属性值

* @param startTag 新标签开始标记

* @param endTag 新标签结束标记

* @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("

content.append("

System.out.println("原始字符串为:"+content.toString());

String nhttp://ewStr = replaceHtmlTag(content.toString(), "img", "src", "src=\"http://junlenet.com/", "\"");

System.out.println(" 替换后为:"+newStr);

}

}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:解密物流信息查询平台系统:轻松输入手机号查物流信息
下一篇:快递物流查询单号:轻松追踪快递进程
相关文章

 发表评论

暂时没有评论,来抢沙发吧~