12345678910111213141516171819202122232425262728293031323334 |
- 'use strict';
- var toRegex = require('to-regex');
- var regexNot = require('regex-not');
- var cached;
- /**
- * Get the last element from `array`
- * @param {Array} `array`
- * @return {*}
- */
- exports.last = function(arr) {
- return arr[arr.length - 1];
- };
- /**
- * Create and cache regex to use for text nodes
- */
- exports.createRegex = function(pattern, include) {
- if (cached) return cached;
- var opts = {contains: true, strictClose: false};
- var not = regexNot.create(pattern, opts);
- var re;
- if (typeof include === 'string') {
- re = toRegex('^(?:' + include + '|' + not + ')', opts);
- } else {
- re = toRegex(not, opts);
- }
- return (cached = re);
- };
|