Показать сообщение отдельно
  #14 (permalink)  
Старый 18.02.2018, 19:56
Новичок на форуме
Отправить личное сообщение для Ingiboy Посмотреть профиль Найти все сообщения от Ingiboy
 
Регистрация: 18.02.2018
Сообщений: 1

Занекропостим
Спасибо всем за идеи, подсократил и, возможно, ускорил код. Применяю для создания url из заголовка статьи в нашем издании:

function translit(str) {
	str = str.toLowerCase().replace(/<.+>/, ' ').replace(/\s+/, ' ');
	var c = {
		'а':'a', 'б':'b', 'в':'v', 'г':'g', 'д':'d', 'е':'e', 'ё':'jo', 'ж':'zh', 'з':'z', 'и':'i', 'й':'j', 'к':'k', 'л':'l', 'м':'m', 'н':'n', 'о':'o', 'п':'p', 'р':'r', 'с':'s', 'т':'t', 'у':'u', 'ф':'f', 'х':'h', 'ц':'c', 'ч':'ch', 'ш':'sh', 'щ':'shch', 'ъ':'', 'ы':'y', 'ь':'', 'э':'e', 'ю':'ju', 'я':'ja', ' ':'-', ';':'', ':':'', ',':'', '—':'-', '–':'-', '.':'', '«':'', '»':'', '"':'', "'":'', '@':''
	}
	var newStr = new String();
	for (var i = 0; i < str.length; i++) {
		ch = str.charAt(i);
		newStr += ch in c ? c[ch] : ch;
	}
	return newStr;
}

Последний раз редактировалось Ingiboy, 18.02.2018 в 20:00.
Ответить с цитированием