Create a javascript regular expression for matching everything except for the given string.
npm install regex-not> Create a javascript regular expression for matching everything except for the given string.
Please consider following this project's author, Jon Schlinkert, and consider starring the project to show your :heart: and support.
Install with npm:
``sh`
$ npm install --save regex-not
`js`
var not = require('regex-not');
The main export is a function that takes a string an options object.
`js`
not(string[, options]);
Example
`js`
var not = require('regex-not');
console.log(not('foo'));
//=> /^(?:(?!^(?:foo)$).)+$/
Strict matching
By default, the returned regex is for strictly (not) matching the exact given pattern (in other words, "match this string if it does NOT _exactly equal_ foo"):
`js`
var re = not('foo');
console.log(re.test('foo')); //=> false
console.log(re.test('bar')); //=> true
console.log(re.test('foobar')); //=> true
console.log(re.test('barfoo')); //=> true
Returns a string to allow you to create your own regex:
`js`
console.log(not.create('foo'));
//=> '(?:(?!^(?:foo)$).)+'
options.contains
You can relax strict matching by setting options.contains to true (in other words, "match this string if it does NOT _contain_ foo"):
`js`
var re = not('foo');
console.log(re.test('foo', {contains: true})); //=> false
console.log(re.test('bar', {contains: true})); //=> true
console.log(re.test('foobar', {contains: true})); //=> false
console.log(re.test('barfoo', {contains: true})); //=> false
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Running Tests
Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
`sh`
$ npm install && npm test
Building docs
_(This project's readme.md is generated by verb, please don't edit the readme directly. Any changes to the readme must be made in the .verb.md readme template.)_
To generate the readme, run the following command:
`sh``
$ npm install -g verbose/verb#dev verb-generate-readme && verb
You might also be interested in these projects:
* regex-cache: Memoize the results of a call to the RegExp constructor, avoiding repetitious runtime compilation of… more | homepage
* to-regex: Generate a regex from a string or array of strings. | homepage
| Commits | Contributor |
| --- | --- |
| 9 | jonschlinkert |
| 1 | doowb |
| 1 | EdwardBetts |
Jon Schlinkert
* linkedin/in/jonschlinkert
* github/jonschlinkert
* twitter/jonschlinkert
Copyright © 2018, Jon Schlinkert.
Released under the MIT License.
*
_This file was generated by verb-generate-readme, v0.6.0, on February 19, 2018._