UNPKG

corifeus-utils

Version:
18 lines (14 loc) 562 B
const escape = string => { if (typeof string !== 'string') { throw new TypeError('Expected a string'); } // Escape characters with special meaning either inside or outside character sets. // Use a simple backslash escape when it’s always valid, and a \unnnn escape when the simpler form would be disallowed by Unicode patterns’ stricter grammar. return string .replace(/[|\\{}()[\]^$+*?.]/g, '\\$&') .replace(/-/g, '\\x2d'); } if (!RegExp.escape) { RegExp.escape = escape; } module.exports.escape = escape;