regex-combiner

1.0.1 • Public • Published

Regex Combiner

Combines an array of regexes into a single regex.

Example

var regexCombiner = require('regex-combiner');
var combined = regexCombiner([
    /abc$/,
    /abcd+e/,
    /a.*/,
    /bar/,
    'bad+' // strings are accepted too
]);
/* /(a(bc($|d+e)|.*)|ba(r|d+))/ */
 
combined.test('abcdddde'); // true
combined.test('bar'); // true
combined.test('baddd'); // true

Caveats

  • No flags! Combining case-sensitive and case-insensitive regexes is ... difficult, so all flags are ignored.
  • No back-references in the input regexes. Things like /(['"])foo\1/ are just not going to work.
  • The resulting regex is pretty much only going to be useful for .test(). Trying to get something meaningful from the groups is not going to be fun.

Licence

MIT

Dependents (1)

Package Sidebar

Install

npm i regex-combiner

Weekly Downloads

4

Version

1.0.1

License

MIT

Last publish

Collaborators

  • spadgos