Java 正则表达式文本内容整体匹配替换

概要:

将文本内的所有 {{xxx}} 替换为想要替换的内容

如:

原始文本:aaa{{bbb}}ccc{{ddd}}eee

替换后   :aaa-ccc-eee

| |目录


替换需求

将文本内的所有 {{xxx}} 替换为“-”

替换效果

正则匹配到的内容:{{bbb}}
花括号里面的内容:bbb
正则匹配到的内容:{{ddd}}
花括号里面的内容:ddd

原始文本:aaa{{bbb}}ccc{{ddd}}eee
替换后的文本:aaa-ccc-eee

代码

public static void main(String[] args) {
	// 内容
	String content = "aaa{{bbb}}ccc{{ddd}}eee";
	// 正则
	Pattern p = Pattern.compile("\\{\\{(.*?)\\}\\}");
	Matcher m = p.matcher(content);

	// 返回结果
	StringBuffer result = new StringBuffer();
	while (m.find()) {
		System.out.println("正则匹配到的内容:" + m.group());
		System.out.println("花括号里面的内容:" + m.group(1));
		// 替换为 -
		m.appendReplacement(result, "-");
	}
	// 替换之前匹配到的内容
	m.appendTail(result);

	System.out.println("\n原始文本:" + content);
	System.out.println("替换后的文本:" + result.toString());
}


评论关闭
评论 还能输入200
评论关闭
评论 还能输入200
资料加载中...
已关注 , 取消