1.2.6 • Published 4 years ago

voll v1.2.6

Weekly downloads
18
License
MIT
Repository
github
Last release
4 years ago

voll is based mayority bool but improved in some aspects:

  • Exact word matching.
  • Insensitive comparison support.
  • Detect words based on unicode ranges.
  • Caching level for speed up AST evaluation.
  • Detect quotes words using scape quotes (' or ") for exact matches.
  • Operators alias (example: red+yellow means the same than red OR yellow).

Install

$ npm install voll --save

Usage

var voll = require('voll')
var test = voll('(red OR blue) AND (orange OR yellow)')

test('red') //=> false
test('yellow') //=> false
test('red yellow') //=> true

You can build complex expressions as you need. Use parentheses to specify the preference:

((red OR blue) AND NOT (orange OR yellow)) OR orange

In other case the preference is left to right. Also it handles malformed expressions. For example:

((red OR blue) AND NOT (orange yellow)) OR orange

Produces the follow error:

SyntaxError: Parse error on line 1:
...ue) AND NOT (orange yellow)) OR orange
-----------------------^

Operators

OperatorAlias
AND
OR+
NOT-

API

voll(expr, options)

expr

Required Type: string

Boolean expression to be evaluated.

options

Type: object

Provide specific parser options

insensitive

Type: boolean Default: false

Enable/Disable insensitive comparison.

cache

Type: boolean Default: true

Enable/Disable caching.

cacheOpts

Type: object

Provide specific cache options. See mem#options.

License

Icon made by Darius Dan from flaticon.

MIT © Kiko Beats

1.2.6

4 years ago

1.2.5

5 years ago

1.2.4

6 years ago

1.2.3

7 years ago

1.2.2

8 years ago

1.2.1

8 years ago

1.2.0

8 years ago

1.1.1

8 years ago

1.1.0

8 years ago

1.0.0

8 years ago

0.0.0

8 years ago