Как конвертировать изуродованный юникод в эмодзи в JavaScript? - PullRequest
0 голосов
/ 15 апреля 2019

Из твиттера я получаю код ниже. Как конвертировать этот твиттер-юникод в смайлики в javascript?

(&# 128079;&# 128079;&# 128079;&# 128079;)

до

????

Как показать символ эмодзи с помощью JavaScript?

1 Ответ

1 голос
/ 15 апреля 2019

Вы можете использовать регулярное выражение /&# (\w+);/, чтобы получить каждый кодовый пункт для группы захвата. Затем используйте метод String.fromCodePoint в функции замены replace, чтобы получить смайлики следующим образом:

const str = '&# 128079;&# 128079;&# 128079;&# 128079;'
const emojiStr = str.replace(/&# (\w+);/g, (m, c1) => String.fromCodePoint(c1))

console.log(emojiStr)

( Regex demo )

Если вы просто хотите отобразить его в DOM, вы можете просто удалить пробел (\s) и установить для экранированной строки значение innerHTML

const str = '&# 128079;&# 128079;&# 128079;&# 128079;'
document.getElementById('display').innerHTML += str.replace(/\s/g, '')
<span id='display'></span>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...