package javacodebook.io.csv;

/**
 * Eine kleine Hilfsklasse für die Behandlung von Strings.
 */
public class Toolbox {

    /**
     * Diese Methode ersetzt in einem String einen Teilstring durch einen
     * neuen Teilstring.
     */
    public static String replace(String textStr, String oldStr, String newStr) {
        StringBuffer buffer = new StringBuffer();
        int textLength = textStr.length();
        int repLength = oldStr.length();
        int startIndex = 0;
        int index = textStr.indexOf(oldStr);
        while((index >= 0) && (index < textLength)) {
            //Text ohne den zu ersetzenden String an buffer anhängen
            buffer.append(textStr.substring(startIndex, index));
            //neuen substring anhängen
            buffer.append(newStr);
            startIndex = index + repLength;
            index = textStr.indexOf(oldStr, startIndex);
        }
        //letzten Teil des Textes anhängen
        buffer.append(textStr.substring(startIndex, textStr.length()));
        return buffer.toString();
    }
}
