aho-corasick-node

1.0.2 • Public • Published

aho-corasick-node

A Node implementation of the Aho-Corasick string matching algorithm based on DoubleArray Trie.

Install

npm install aho-corasick-node --save

Usage

Match

const AhoCorasick = require('aho-corasick-node');

const keywords = ['b', 'ba', 'nan', 'ab'];
const text = 'banana';

// build AhoCorasick
const builder = AhoCorasick.builder();
keywords.forEach(k => builder.add(k));
const ac = builder.build();

// match
const hits = ac.match(text); // ['b', 'ba', 'nan']

Load

const AhoCorasick = require('aho-corasick-node');

const keywords = ['b', 'ba', 'nan', 'ab'];
const text = 'banana';

const builder = AhoCorasick.builder();
keywords.forEach(k => builder.add(k));
const ac = builder.build();

const buf = ac.export();
// buf:
// {
//   base: string...,
//   check: string...,
//   failurelink: string...,
//   output: string...,
//   codemap: string...,
// };

const loadedAc = AhoCorasick.from(buf);
const hits = loadedAc.match(text); // ['b', 'ba', 'nan']

Licence

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i aho-corasick-node

Weekly Downloads

29,139

Version

1.0.2

License

MIT

Unpacked Size

11.2 kB

Total Files

5

Last publish

Collaborators

  • guofei