function preg_replace (array_pattern, array_pattern_replace, my_string)
{
	var new_string = String (my_string);
	for (i=0; i<array_pattern.length; i++) 
	{
		var reg_exp= RegExp(array_pattern[i],"g");
		var val_to_replace = array_pattern_replace[i];
		new_string = new_string.replace (reg_exp, val_to_replace);
	}
	return new_string;
}

function xitiCleanString(str)
{
	str = str.replace(/(<\/?\w+((\s+\w+(\s*=\s*(?:".*?"|'.*?'|[^'">\s]+))?)+\s*|\s*)\/?>)|(<!--.*?-->)/gim,"");
	var norm = new Array('À','Á','Â','Ã','Ä','Å','Æ','Ç','È','É','Ê','Ë','Ì','Í','Î','Ï','Ð','Ñ','Ò','Ó','Ô','Õ','Ö','Ø','Ù','Ú','Û','Ü','Ý','Þ','ß','à','á','â','ã','ä','å','æ','ç','è','é','ê','ë','ì','í','î','ï','ð','ñ','ò','ó','ô','õ','ö','ø','ù','ú','û','ü','ý','ý','þ','ÿ','=','&',':','"',"'");
	var spec = new Array('A','A','A','A','A','A','A','C','E','E','E','E','I','I','I','I','D','N','O','O','O','0','O','O','U','U','U','U','Y','b','s','a','a','a','a','a','a','a','c','e','e','e','e','i','i','i','i','d','n','o','o','o','o','o','o','u','u','u','u','y','y','b','y',' ',' ',' ','','');
	str = preg_replace(norm,spec,str);
	str = str.replace(/(\s+)/g,'_');
	str = str.replace(/(^_*)|(_*$)/g,'');
	return str;
}


