如何在 React Native 或 JS 中解码特殊字符或 HTML 实体?

Kar*_*rma 4 javascript parsing html-parsing reactjs react-native

我从具有 HTML 实体的后端获取字符串。

‘ ’ “ ”分别是哪些

我使用了不同的功能,例如:-

var map = { amp: '&', lt: '<', gt: '>', quot: '"', '#039': "'"};

var output = newsTitle.replace(/&([^;]+);/g, (m, c) => map[c]);
Run Code Online (Sandbox Code Playgroud)

输出是解析后的字符串,但它无法替换JavaScriptReact Native 中的。任何帮助,将不胜感激。

编辑:-

我实际上正在传递这个文本

<Text numberOfLines={2}>
{output}
 </Text>
Run Code Online (Sandbox Code Playgroud)

saj*_*asi 8

你可以使用这个库https://github.com/mdevils/node-html-entities

const Entities = require('html-entities').XmlEntities;

const entities = new Entities();
console.log(entities.decode('&lt;&gt;&quot;&apos;&amp;&copy;&reg;&#8710;')); // <>"'&&copy;&reg;?
Run Code Online (Sandbox Code Playgroud)


mas*_*ixe -4

$('form').submit(function() {
  var theString = $('#string').val();
  var varTitle = $('<textarea />').html(theString).text();
  $('#output').text(varTitle);
  return false;
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form action="#" method="post">
  <fieldset>
    <label for="string">Enter a html-encoded string to decode</label>
    <input type="text" name="string" id="string" />
  </fieldset>
  <fieldset>
    <input type="submit" value="decode" />
  </fieldset>
</form>

<div id="output"></div>
Run Code Online (Sandbox Code Playgroud)