//---------------------------------------------------------------------------------------------------------------- // exd.mi // // extra definitions for internal objects //---------------------------------------------------------------------------------------------------------------- #ifndef included #error This script can only be compiled as a #include #endif #ifndef __EXD_MI #define __EXD_MI //***************************************************************************** // String CLASS //***************************************************************************** Function String replaceString(string baseString, string toreplace, string replacedby); /** replaceString() Returns the class name for the object. @param baseString The String which you want to modify. @param toreplace The String you want to be replaced. @param replacedby The String instead of 'toreplace'. @ret The replaced string. */ String replaceString(string baseString, string toreplace, string replacedby) { if (toreplace == "") return baseString; string sf1 = strupper(baseString); string sf2 = strupper(toreplace); int i = strsearch(sf1, sf2); if (i == -1) return baseString; string left = "", right = ""; if (i != 0) left = strleft(baseString, i); if (strlen(basestring) - i - strlen(toreplace) != 0) { right = strright(basestring, strlen(basestring) - i - strlen(toreplace)); } return left + replacedby + right; } Function String cutString(string baseString, string toreplace); /** cutString() Returns the class name for the object. @param baseString The String which you want to modify. @param toreplace The String you want to be replaced. @ret The replaced string. */ String cutString(string baseString, string toreplace) { if (toreplace == "") return baseString; int i = strsearch(baseString, toreplace); if (i == -1) return baseString; string left = "", right = ""; if (i != 0) left = strleft(baseString, i); if (strlen(basestring) - i - strlen(toreplace) != 0) { right = strright(basestring, strlen(basestring) - i - strlen(toreplace)); } return left + right; } Function String fillStringBefore(string baseString, string after, string before); /** fillStringBefore() Returns the class name for the object. @param baseString The String which you want to modify. @param toreplace The String you want to be replaced. @ret The replaced string. */ String fillStringBefore(string baseString, string filled, string anchor) { int i = strsearch(baseString, anchor); if (i == -1) return baseString; string left = "", right = ""; if (i != 0) left = strleft(baseString, i); if (strlen(basestring) - i - strlen(toreplace) != 0) { right = strright(basestring, strlen(basestring) - i); } /* bef.setText(integerToString(i) + " - " + left); aft.setText(integerToString(strlen(basestring) - i) + " - " + right); */ return left + filled + right; } Function Int countSubString(string str, string substr); int countSubString(string str, string substr) { int n = 0; for ( int i = 0; i < 666; i++ ) { int r = strSearch(str, substr); #ifdef DEBUG debug(integerToString(r)); #endif if (r == -1) i = 666; else { str = strright(str, strlen(str) - (r + 1)); n++; if (strlen(str) - r == 1) return n; } } return n; } #endif