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
Install with npm:
$ npm install --save regex-notUsage
var not = require('regex-not');The main export is a function that takes a string an options object.
not(string[, options]);Example
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"):
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.create
Returns a string to allow you to create your own regex:
console.log(not.create('foo'));
//=> '(?:(?!^(?:foo)$).)+'Options
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"):
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})); //=> falseAbout
sh
$ npm install && npm test
sh
$ npm install -g verbose/verb#dev verb-generate-readme && verb
Related projects
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
Contributors
| Commits | Contributor |
|---|---|
| 9 | jonschlinkert |
| 1 | doowb |
| 1 | EdwardBetts |
Author
Jon Schlinkert
License
Copyright © 2018, Jon Schlinkert. Released under the MIT License.
This file was generated by verb-generate-readme, v0.6.0, on February 19, 2018.