字符串替换Util"/>
字符串替换Util
public class StringReplaceUtil
{/*** 短信语内容替换,替换标识{}成对出现* * @param text* @param begin* @param end* @param replaceMap* @return*/public static String replaceStr(String text, char begin, char end, HashMap<String, Object> replaceMap){Stack<Character> stack = new Stack<Character>();StringBuffer sb = new StringBuffer();int startIndex = 0;int endIndex = -1;String replaceStr = "";for (int i = 0; i < text.length(); i++) {char c = text.charAt(i);if (c == begin) {stack.push(c);sb.append(text.substring(startIndex, i));// System.out.println(sb.toString());startIndex = i;} else if (c == end) {// 证明是成对出现的if (stack.pop() == begin) {endIndex = i;replaceStr = text.substring(startIndex + 1, endIndex);if (replaceStr != null) {sb.append(replaceMap.get(replaceStr));}startIndex = endIndex + 1;}}}sb.append(text.substring(startIndex, text.length()));return sb.toString();}
}
更多推荐
字符串替换Util
发布评论