initial quantum version
[phpeclipse.git] / archive / net.sourceforge.phpeclipse.quantum.sql / src / com / quantum / util / StringUtil.java
diff --git a/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/util/StringUtil.java b/archive/net.sourceforge.phpeclipse.quantum.sql/src/com/quantum/util/StringUtil.java
new file mode 100644 (file)
index 0000000..3ec3d3d
--- /dev/null
@@ -0,0 +1,33 @@
+/* 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();
+       }
+}