栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java Matcher匹配头尾截取替换字符串的案例

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java Matcher匹配头尾截取替换字符串的案例

在java 编程中,我们常常有这样的需求:需要将一段字符串内的特定字符串,按照一定规则查找出来或替换,比如匹配文本开头规则和结束规则。

以下就是Matcher的使用:

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

public class CommonTest {
  public static void main(String[] args) {
    String str = "url: jdbc:mysql://${cot.identity.db.ip}:3306/${cot.identity.db.dbname}?useUnicode=true&characterEncoding=UTF8";
    if (str.contains("${cot.")) {
      Pattern leftpattern = Pattern.compile("\$\{");
      Matcher leftmatcher = leftpattern.matcher(str);
      Pattern rightpattern = Pattern.compile("}");
      Matcher rightmatcher = rightpattern.matcher(str);
      int begin = 0;
      List foundKeys = new ArrayList<>();
      while (leftmatcher.find(begin)) {
 rightmatcher.find(leftmatcher.start());
 String configKey = str.substring(leftmatcher.start(), rightmatcher.end());
 System.out.println(configKey.replace("${", "{{"));
 foundKeys.add(configKey);
 begin = rightmatcher.end();
      }
      System.out.println("原内容:"+str);
      for (String foundkey : foundKeys){
 str = str.replace(foundkey, foundkey.replace("${cot.","{{cot.").replace("}", "}}").replace("-","_"));
      }
      System.out.println("替换后:"+str);
    }
  }
}

补充知识:JAVA正则表达式 Pattern和Matcher,用正则替换对应的内容

需求:

过滤样式,比如:

铅笔机一个

过滤后结果= 铅笔机一个

public static void main(String[] args) { 
  String skuName="

铅笔机一个

"; // 生成一个Pattern,同时编译一个正则表达式 Pattern pattern = Pattern.compile("<(.[^>]*)>"); //匹配字符串 Matcher matcher = pattern.matcher(skuName); //把符合正则的数据替换成"" skuName=matcher.replaceAll(""); System.out.println("替换以后结果=====》"+skuName); }

输出结果:

替换以后结果=====》铅笔机一个

说明:

1.Pattern类用于创建一个正则表达式,也可以说创建一个匹配模式,它的构造方法是私有的,不可以直接创建,但可以通过Pattern.complie(String regex)简单工厂方法创建一个正则表达式。

2.Pattern.matcher(String regex,CharSequence input)是一个静态方法,用于快速匹配字符串,该方法适合用于只匹配一次,且匹配全部字符串。

以上这篇java Matcher匹配头尾截取替换字符串的案例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持考高分网。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/130062.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号