/**
* 替换字符串中的变量
* @param src 带有变量的字符串
* @param replacement 变量对应的值
* @param regex 变量表达式
* @return 替换后的字符串
*/
public static String replace(String src, Map<String, String> replacement, String regex)
{
if (isEmpty(src))
{
return src;
}
else if(replacement == null || regex == null)
{
throw new IllegalArgumentException("replacement cannot be null");
}
Pattern p = Pattern.compile(regex);
StringBuffer sb = new StringBuffer();
Matcher m = p.matcher(src);
while(m.find())
{
String temp = replacement.get(m.group());
if (temp == null)
{
temp = "";
}
m.appendReplacement(sb, temp);
}
m.appendTail(sb);
return sb.toString();
}
java 正则表达式实现的字符串替换
猜你喜欢
转载自lic0112.iteye.com/blog/2031573
今日推荐
周排行