time-to-botec

Benchmark sampling in different programming languages
Log | Files | Refs | README

unescape.js (1056B)


      1 var toString = require('./toString'),
      2     unescapeHtmlChar = require('./_unescapeHtmlChar');
      3 
      4 /** Used to match HTML entities and HTML characters. */
      5 var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g,
      6     reHasEscapedHtml = RegExp(reEscapedHtml.source);
      7 
      8 /**
      9  * The inverse of `_.escape`; this method converts the HTML entities
     10  * `&`, `<`, `>`, `"`, and `'` in `string` to
     11  * their corresponding characters.
     12  *
     13  * **Note:** No other HTML entities are unescaped. To unescape additional
     14  * HTML entities use a third-party library like [_he_](https://mths.be/he).
     15  *
     16  * @static
     17  * @memberOf _
     18  * @since 0.6.0
     19  * @category String
     20  * @param {string} [string=''] The string to unescape.
     21  * @returns {string} Returns the unescaped string.
     22  * @example
     23  *
     24  * _.unescape('fred, barney, & pebbles');
     25  * // => 'fred, barney, & pebbles'
     26  */
     27 function unescape(string) {
     28   string = toString(string);
     29   return (string && reHasEscapedHtml.test(string))
     30     ? string.replace(reEscapedHtml, unescapeHtmlChar)
     31     : string;
     32 }
     33 
     34 module.exports = unescape;