hyperscan is a high-performance multiple regex matching library.
It uses hybrid automata techniques to allow simultaneous matching of large numbers (up to tens of thousands) of regular expressions and for the matching of regular expressions across block data.
This project integrate hyperscan in fibjs, to enable developers to use hyperscan in their javascript projects.
It has a great advantage in fileds like text diming, keywords matching and so many on.
You need to install libhs.so or libhs.dylib in your system or put them in your current work directory before you use fibjs-hyperscan.
git clone https://github.com/asionius/fibjs-hyperscan.git
cd fibjs-hyperscan
chmod +x fibjs-hyperscan-linux-x64-v0.20
cp ./fibjs-hyperscan-linux-x64-v0.20 /usr/local/bin/fibjs
fibjs hs_test.js
https://github.com/asionius/fibjs/tree/newHs
var reg = hs.compile("hello", "L");
var res = reg.scan("this is a hello world test text");
console.log(res);
/*
{
"hello": [
[10, 15]
]
}
*/
- click docs -> click manual -> click module -> click ifs -> click hyperscan