java正则表达式获取指定HTML标签的指定属性值且替换的方法

高洛峰
高洛峰 原创
2017-01-22 14:50:56 1192浏览

实例如下:

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标签的指定属性值且替换的方法全部内容了,希望大家多多支持脚PHP中文网~

更多java正则表达式获取指定HTML标签的指定属性值且替换的方法相关文章请关注PHP中文网!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。