You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

20 lines
482 B

var keys = require('./keys');
exports = function(str) {
return regTest.test(str) ? str.replace(regReplace, replaceFn) : str;
};
var map = (exports.map = {
'&': '&',
'<': '&lt;',
'>': '&gt;',
'"': '&quot;',
"'": '&#x27;',
'`': '&#x60;'
});
var regSrc = '(?:' + keys(map).join('|') + ')';
var regTest = new RegExp(regSrc);
var regReplace = new RegExp(regSrc, 'g');
var replaceFn = function(match) {
return map[match];
};
module.exports = exports;