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

实例如下:

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

(0)

相关推荐

  • JAVA过滤标签实现将html内容转换为文本的方法示例

    本文实例讲述了JAVA过滤标签实现将html内容转换为文本的方法.分享给大家供大家参考,具体如下: /** * 把html内容转为文本 * @param html 需要处理的html文本 * @param filterTags 需要保留的html标签样式 * @return */ public static String trimHtml2Txt(String html, String[] filterTags){ html = html.replaceAll("\\<head>[\

  • java使用正则表达式过滤html标签

    前段时间开发的时候要读取一篇文章的简介内容(也就是前200个字符),使用了隐藏字段,可能有人就要问了,那后台也是可以截取字符的啊,那是因为编辑器里面包含了html标签,所以后台就需要处理html标签的正则表达式,前些天上网搜了下,发现有人写好的一个类,给大家共享下,不要闲小弟落伍了... import java.util.regex.Matcher; import java.util.regex.Pattern; /** * <p> * Title: HTML相关的正则表达式工具类 * <

  • Java中正则表达式去除html标签

    Java中正则表达式去除html的标签,主要目的更精确的显示内容,比如前一段时间在做类似于博客中发布文章功能,当编辑器中输入内容后会将样式标签也传入后台并且保存数据库,但是在显示摘要的时候,比如显示正文的前50字作为摘要,那么这时需要去除所有html标签,然后在截取50字,所以就通过了Java正则表达式实现了如下方法,代码如下: 注:这是Java正则表达式去除html标签方法. private static final String regEx_script = "<script[^>

  • java去掉html标签 必须首先去掉双引号的正则

    复制代码 代码如下: public static String htmlToStr(String htmlStr){ String result = ""; boolean flag = true; if(htmlStr==null){ return null; } htmlStr = htmlStr.replace("\"", ""); //去掉引号 char[] a = htmlStr.toCharArray(); int leng

  • Java基于正则表达式获取指定HTML标签指定属性值的方法

    本文实例讲述了Java基于正则表达式获取指定HTML标签指定属性值的方法.分享给大家供大家参考,具体如下: 有时可能会有这样的需求,从HTML页面获取指定标签的指定属性值,可以通过第三方库解析来获取,但是这样相对比较麻烦! 如果使用正则表达式,那么就变得简单了.代码如下: package com.mmq.regex; import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import

  • Java正则表达式过滤出字母、数字和中文

    1.Java中过滤出字母.数字和中文的正则表达式 (1)过滤出字母的正则表达式 [^(A-Za-z)] (2) 过滤出 数字 的正则表达式 [^(0-9)] (3) 过滤出 中文 的正则表达式 [^(\\u4e00-\\u9fa5)] (4) 过滤出字母.数字和中文的正则表达式 [^(a-zA-Z0-9\\u4e00-\\u9fa5)] 2.实例源码 ** * @Title:FilterStr.java * @Package:com.you.dao * @Description:Java中过滤数

  • java正则匹配HTML中a标签里的中文字符示例

    本文实例讲述了java正则匹配HTML中a标签里的中文字符.分享给大家供大家参考,具体如下: 今天群里一位朋友问到了一个正则表达式的问题,有如下内容: <a href='www.baidu.comds=id32434#comment'rewr>特432</a> 453543 <a guhll,,l>a1特123你好123吗?</a> <a href=id=32434#comment'ewrer>特2</a> <a>标签中的

  • java正则表达式解析html示例分享

    复制代码 代码如下: package work; import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.util.regex.Matcher;import java.util.regex.Pattern; import org.apache.commons.httpclient.DefaultH

  • Java使用正则表达式删除所有HTML标签的方法示例

    本文实例讲述了Java使用正则表达式删除所有HTML标签的方法.分享给大家供大家参考,具体如下: package com.xz.cxzy.utils; import java.util.regex.Matcher; import java.util.regex.Pattern; public class HtmlUtil { private static final String regEx_script = "<script[^>]*?>[\\s\\S]*?<\\/sc

  • Java/Js下使用正则表达式匹配嵌套Html标签

    通用 HTML 标签区配正则 最近看网站日志,发现有人在博客上转了我不知道几年前写的一个匹配 HTML 标签的正则,刚好最近也在做一些相关的事情,顿时来了兴趣.就拿回来改改,成了下面这样,可能会有一些 case 遗漏,欢迎修改,已知在内嵌 <script> 复杂内容的处理能力较弱,不过对纯 HTML 来说已经够用,拿来做一些分析工具还是不错滴. 复制代码 代码如下: <script type="text/javascript"> var str = "

随机推荐