Java 获取和替换字符串中 {} 包含的内容
Java 获取和替换字符串中 {} 包含的内容1.需求描述2.功能实现3.总结
Java 获取和替换字符串中 {} 包含的内容
系统:Win10 JDK:1.8.0_121 IDEA:2017.3.2
1.需求描述
给出一个字符串,用正则表达式去查找该字符串中的 {},并替换为自己需要的内容
2.功能实现
public class Test {
public static void main(String
[] args
) throws Exception
{
String url1
= "www.baidu.com/name={testName}?password={testPsw}";
String url2
= solveUrl(url1
);
System
.out
.println("url1:" + url1
);
System
.out
.println("url2:" +url2
);
}
public static String
solveUrl(String url
) throws Exception
{
int i
= 0;
String
[] strings
= {"aa","bb","cc"};
String pattern
= "\\{[^}]*\\}";
Pattern p
= Pattern
.compile(pattern
);
Matcher m
= p
.matcher(url
);
while(m
.find()){
String param
= m
.group(0);
System
.out
.println(param
.substring(1,param
.length()-1));
url
= url
.replaceFirst("\\{[^}]*\\}",strings
[i
]);
i
++;
}
return url
;
}
}
运行结果
3.总结
一般来说,只要我们善于使用正则表达式,替换这种功能是很容易实现的,当然这里只是举例一个最简单的例子,现实情况下可能还要考虑嵌套的问题,我们可以根据自己的需求变通。只要我们掌握了方法,去实现这些功能也不会困难。