var allSpacesRe = /\s+/g;
var leadingSpacesRe = /^\s+/;
var trailingSpacesRe = /\s+$/;

function removeSpaces(s) { return s.replace(allSpacesRe, ""); }
function trimLeading(s) { return s.replace(leadingSpacesRe, ""); }
function trimTrailing(s) { return s.replace(trailingSpacesRe, ""); }
function trim(s) { return trimLeading(trimTrailing(s)); }

function getFront(mainStr, searchStr)
{
  foundOffset = mainStr.indexOf(searchStr);
  if (foundOffset == -1) {
    return null;
}
return mainStr.substring(0,foundOffset);
}

// Извлечение части строки после подстроки searchstring 
function getEnd(mainStr,searchStr) 
{
  foundOffset = mainStr.indexOf(searchStr);
   if (foundOffset == -1) {
     return null;
   }
  return mainStr.substring(foundOffset+searchStr.length, mainStr.length);
}

// Вставка подстроки insertstring перед подстрокой searchstring 
function insertstring(mainStr,searchStr,insertStr) 
{
 var front = getFront (mainStr, searchStr);
 var end = getEnd(mainStr,searchStr);
 if ((front != null) && (end != null)) {
 return front + insertStr + searchStr + end;
 }
 return null;
}

// Удаление подстроки deleteString 
function deleteString(mainStr,deleteStr) 
{
var ls = replaceString(mainStr,deleteStr, "");
if(ls == null)
	return mainStr;

return ls;
}

// Замена searchstring на replaceString
function replaceString(mainStr,searchStr,replaceStr) 
{
 var front = getFront(mainStr,searchStr);
 var end = getEnd(mainStr,searchStr);
 if (front != null && end != null) { 
  return front + replaceStr + end;
 }
 return null;
}
// преобразует сиволы в их html сущности
function unhtmlspecialchars(mainStr){
var __Str;
 __Str = mainStr;
 __Str = __Str.replace(/<br>/gi," ");
 __Str = __Str.replace(/&nbsp;/gi," ");
 __Str = __Str.replace(/&amp;/gi,"&");
 __Str = __Str.replace(/&gt;/gi,">");
 __Str = __Str.replace(/&lt;/gi,"<");
 __Str = __Str.replace(/&quot;/gi,"\"");
 __Str = __Str.replace(/&#039;/gi,"'");
return __Str;
}

function trim(str, chars) {
    return ltrim(rtrim(str, chars), chars);
}

function ltrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}