var vbCr = "\r";
var vbLf = "\n";
var vbCrLf = vbCr+vbLf;
var vbTab = "\t";

function replaceonce(str,patron,cambio){
var nPos=0;
var tmp=str;
	nPos=instr(tmp,patron);

	if(nPos>0){
		tmp= left(tmp,nPos-1) +  trim(cambio) + " " + tmp.substring(nPos+len(patron),len(tmp));
	}
	return tmp;
}
	
function left(s, n){
	// Devuelve los n primeros caracteres de la cadena
	if(n>s.length)
		n=s.length;
		
	return s.substring(0, n);
}
function mid(s, n, c){
	// Devuelve una cadena desde la posición n, con c caracteres
	// Si c = 0 devolver toda la cadena desde la posición n
	
	var numargs=mid.arguments.length;
	
	// Si sólo se pasan los dos primeros argumentos
	if(numargs<3)
		c=String(s).length-n+1;
		
	if(c<1)
		c=String(s).length-n+1;
	if(n+c >String(s).length)
		c=String(s).length-n+1;
	if(n>String(s).length)
		return "";
		
	return String(s).substring(n-1,n+c-1);
}

function ltrim(s){
	// Devuelve una cadena sin los espacios del principio
	var i=0;
	var j=0;
	
	// Busca el primer caracter <> de un espacio
	for(i=0; i<=s.length-1; i++)
		if(s.substring(i,i+1) == ' '){
			s = s.substring(i+1,s.length);
			//j=i;
			//break;
		}else{
			break;
		}
	return s; // s.substring(j, s.length);
}

function rtrim(s){
	// Quita los espacios en blanco del final de la cadena
	var j=0;
	
	// Busca el último caracter <> de un espacio
	for(var i=s.length-1; i>-1; i--)
		if(s.substring(i,i+1) == ' '){
			s = s.substring(0, i+1);
			//break;
		}else{
			break;
		}
	
	return s; //s.substring(0, j+1);
}
function trim(s){
	// Quita los espacios del principio y del final
	if((s.length)>0){
		return ltrim(rtrim(String(s)));
	}else{
		return "";
	}
}


function instr(n, s1, s2){
	// Devuelve la posición de la primera ocurrencia de s2 en s1
	// Si se especifica n, se empezará a comprobar desde esa posición
	// Sino se especifica, los dos parámetros serán las cadenas
	var numargs=instr.arguments.length;
	
	if(numargs<3)
		return String(n).indexOf(s1)+1;
	else
		return String(s1).indexOf(s2, n)+1;
}
function len(s){
	// Devuelve la longitud de la cadena s
	return parseInt(String(s).length);
}
