--- /dev/null
+/* Created on Jan 19, 2004 */
+package com.quantum.util;
+
+import java.util.Arrays;
+
+/**
+ * @author holmesbc
+ */
+public class StringUtil {
+
+ public static String substituteString(String original, String placeHolder, String replacementValue) {
+ StringBuffer buffer = new StringBuffer();
+ char[] originalChars = original == null ? new char[0] : original.toCharArray();
+ char[] placeHolderChars = placeHolder.toCharArray();
+ char[] placeHolderComparisonArray = new char[placeHolderChars.length];
+
+ for (int i = 0, length = originalChars.length; i < length; i++) {
+ if (i <= length - placeHolderChars.length) {
+ System.arraycopy(originalChars, i, placeHolderComparisonArray, 0, placeHolderComparisonArray.length);
+ if (Arrays.equals(placeHolderComparisonArray, placeHolderChars)) {
+ i += placeHolderComparisonArray.length - 1;
+ buffer.append(replacementValue);
+ } else {
+ buffer.append(originalChars[i]);
+ }
+ } else {
+ buffer.append(originalChars[i]);
+ }
+ }
+
+ return original == null ? null : buffer.toString();
+ }
+}