fltrjs
v1.0.1
Published
A library that utilizes RegEx to filter strings using custom .fltrjs or .fltrjssingle files.
Downloads
3
Maintainers
Readme
fltrjs
A Node.JS filtering library.
This library is built for asynchronous applications. There will be no examples for synchronous applications.
Documentation based on fltrjs V1.0.1 All built in tests PASS
$ npm test
> [email protected] test
> node test/test.js
Test 1/3: PASS
Test 2/3: PASS
Test 3/3: PASS
Install:
Start by installing the library:
npm i fltrjs
fltrjs Format
Both .fltrjs and .fltrjs single should be named <name>.<extension>
. They will work without a name, it's just not recommended.
Create a .fltrjs file:
.fltrjs files are used when you need multiple filters at once.
(examples are included in the test folder)
<name>.fltrjs
FILTER: # create a new filter
TARGET <word to target here>
FLAGS <any regex flags, g/gi etc. (gi recommend for most purposes)>
REPLACEWITH <what to replace the target with>
COMPILE # finally compile it all
Create a .fltrjssingle file:
.fltrjssingle files are used when you only need one filter at a time. Note that .fltrjssingle files do NOT use the FILTER keyword at all.
(examples are included in the test folder)
<name>.fltrjssingle
TARGET <word to target here>
FLAGS <any regex flags, g/gi etc. (gi recommend for most purposes)>
REPLACEWITH <what to replace the target with>
COMPILE # finally compile it all
fltrjs Syntax:
FILTER
-> creates a new filter
TARGET
-> what is being replaced
FLAGS
-> general RegEx flags
REPLACEWITH
-> what to replace with
COMPILE
-> close the current filter so you can create a new one
#
-> set the rest of the line as a comment
Examples
Use a Filter()
with fltrjssingle files.
const { Filter, Parser } = require("fltrjs"); // Parser is not neccessary for .fltrjssingle files
// I prefer to create a function to run your main scripts, you don't have to though.
async function app() {
const filter = new Filter();
// If you don't want to create a file, you can manually set properties with testFilter.TargetWord = "<word>", just make sure to call Filter.compile() at the end.
await filter.createFromFile("/path/to/.fltrjssingle/file");
// You can either directly use the filter, or create a Parser()
// Parser Example (recommended):
const parser = new Parser();
const text = await parser.applySingle("<text to filter>", filter);
// Non Parser Example:
const text2 = await filter.apply("<text to filter>");
}
app();
Use a Parser()
with .fltrjs files.
const { Parser } = require("fltrjs"); // Parser is neccessary for full .fltrjs files
// I prefer to create a function to run your main scripts, you don't have to though.
async function app() {
// To use .fltrjs files, you must use a parser
const parser = new Parser();
// Import the entire .fltrjs file
const filters = await parser.parseFltrjs("path/to/.fltrjs/file");
// Fltrjs just returns a list of Filter() objects,
// Apply all filters to a string
const parsedString = await parser.applyMany("<text to filter>", filters);
}
app();