java 正则 替换_java正则表达式怎么定义只替换中间的字符

展开全部

可以使用分组来完成,替换字符串中使用$1、$2、$3……可以获取对应组的匹配结果。如果32313133353236313431303231363533e78988e69d8331333365656633前后的字符串是固定的那更简单,直接在替换的时候写上就好了。

因为String的replaceAll就是使用的正则表达式所以示例直接使用的String的替换,Pattern的替换同理。public class Demo {

public static void main(String[] args) {

String str = "aa文字1bb哈哈cc测试dx,测试字符串aa1234bb";

// 替换aa、bb之间的字符串为 "成功"

String str1 = str.replaceAll("aa.*?bb", "aa成功bb");

System.out.println(str1);

// 替换aa、bb之间的字符串为 "成功"

String str2 = str.replaceAll("(aa).*?(bb)", "$1成功$2");

System.out.println(str2);

// 替换小写字母之间的字符串为 "成功"

String str3 = str.replaceAll("([a-z]+).*?([a-z]+)", "$1成功$2");

System.out.println(str3);

}

}

java 正则 替换_java正则表达式怎么定义只替换中间的字符_第1张图片

你可能感兴趣的:(java,正则,替换)