Продължете към съдържанието
Начало » Блог » Преобразуване на текст на кирилица в URL адрес с JavaScript

Преобразуване на текст на кирилица в URL адрес с JavaScript

Преобразуване на текст на кирилица в URL адрес с помощта на JavaScript.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Преобразуване на текст на кирилица в URL адрес с JavaScript</title>
<script>
var a = {"э":"z","Э":"Z","а":"a","А":"A","б":"b","Б":"B","в":"v","В":"V","г":"g","Г":"G","д":"d","Д":"D","е":"e","Е":"E","ж":"zh","Ж":"ZH","з":"z","З":"Z","и":"i","И":"I","й":"i","Й":"I","к":"k","К":"K","Л":"L","л":"l","м":"m","М":"M","н":"n","Н":"N","о":"o","О":"O","п":"p","П":"P","р":"r","Р":"R","с":"s","С":"S","т":"t","Т":"T","у":"u","У":"U","ф":"f","Ф":"F","х":"h","Х":"H","ц":"ts","Ц":"TS","ч":"ch","Ч":"CH","ш":"sh","Ш":"SH","щ":"scht","Щ":"SCHT","ы":"","Ы":"","ь":"","Ь":"","ъ":"a","Ъ":"A","ю":"yu","Ю":"YU","я":"ya","Я":"Ya"};

function transliterate(word){
  return word.split('').map(function (char) {
    return a[char] || char;
  }).join('');
}

function slugify(str) {
	return transliterate(str).toString()
	.normalize('NFD')
    .replace(/[\u0300-\u036f]/g, '') //remove diacritics
    .toLowerCase()
    .trim()
    .replace(/\s+/g, '-') // collapse whitespace and replace by -
    .replace(/[^\w-]+/g, '') //remove non-words
    .replace(/--+/g, '-'); // collapse dashes
}

console.log( slugify('Здравей, свят!') );
</script>

</head>
<body></body>
</html>