| var makeString = require('./helper/makeString'); |
| var htmlEntities = require('./helper/htmlEntities'); |
| |
| module.exports = function unescapeHTML(str) { |
| return makeString(str).replace(/\&([^;]+);/g, function(entity, entityCode) { |
| var match; |
| |
| if (entityCode in htmlEntities) { |
| return htmlEntities[entityCode]; |
| /*eslint no-cond-assign: 0*/ |
| } else if (match = entityCode.match(/^#x([\da-fA-F]+)$/)) { |
| return String.fromCharCode(parseInt(match[1], 16)); |
| /*eslint no-cond-assign: 0*/ |
| } else if (match = entityCode.match(/^#(\d+)$/)) { |
| return String.fromCharCode(~~match[1]); |
| } else { |
| return entity; |
| } |
| }); |
| }; |