实例如下:
public static String repDomain(String source, String domain, String element, String attr) { String img = ""; Pattern p_image; Matcher m_image; String regEx_img = "<" + element + "[^<>]*?\\s" + attr + "=['\"]?(.*?)['\"]?(\\s.*?)?>"; p_image = Pattern.compile(regEx_img, Pattern.CASE_INSENSITIVE); m_image = p_image.matcher(source); while (m_image.find()) { img = m_image.group(); Matcher m = Pattern.compile("href\\s*=\\s*\"?(.*?)(\"|>|\\s+)").matcher(img); while (m.find()) { String srcVal = m.group(1); if(srcVal.indexOf("/@tenant")>=0){ int idx = srcVal.indexOf("/@tenant"); StringBuffer temp = new StringBuffer(); String dstVal = temp.append(domain).append(srcVal.substring(idx+1)).toString(); source = source.replace(srcVal, dstVal); } } } return source; }
以上就是小编为大家带来的java正则表达式获取指定HTML标签的指定属性值且替换的方法全部内容了,希望大家多多支持呐喊教程~