Java-正则表达式匹配 #开头</td>结尾

 

引包


import java.util.regex.Matcher;
import java.util.regex.Pattern;
 

方法1:

// 匹配 #开头</td>结尾中,#以及中间得字符串         #xxx  替换为 ""      #123</td>  匹配#123

        String tableModle = "<td>#123</td><td>#2</td><td>#3</td><td>#4</td>";
        Pattern p=Pattern.compile("#(.+?)(?=</td>)");  

        Matcher m=p.matcher(tableModle); 
        tableModle = m.replaceAll("");

 

最后tableModle为:<td></td><td></td><td></td><td></td>

 

 

方法2:

          //  #xxx</td> 替换为</td>      #123</td>  匹配#123</td>
          String tableModle = "<td>#123</td><td>#2</td><td>#3</td><td>#4</td>";
          Pattern p=Pattern.compile("#.*?</td>");   //此正则只匹配一个
          Matcher m=p.matcher(tableModle); 
          boolean flag = m.find(); 
          while(flag){
              tableModle = tableModle.replace(m.group(), "</td>");
              m=p.matcher(tableModle); 
              flag = m.find(); 
          }

          System.out.println(tableModle);   //<td></td><td></td><td></td><td></td>

 

方法3:

// 匹配 #开头</td>结尾中, 中间的字符串             #123</td>  匹配123

        String tableModle = "<td>#123</td><td>#2</td><td>#3</td><td>#4</td>";
        Pattern p=Pattern.compile("(?<=#).*?(?=</td>)");    

        Matcher m=p.matcher(tableModle); 
        boolean flag = m.find(); 
          while(flag){
              tableModle = tableModle.replace(“#”+m.group(), "");
              m=p.matcher(tableModle); 
              flag = m.find(); 
          }

最后tableModle为:<td></td><td></td><td></td><td></td>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值