Node text search in files
npm install find-in
How it works?
It creates read stream to read from the target file in chunks, matches the chunks using match method and returns an array of objects contains the final results.
API
find(options)
options
object contains:
path: string
file path,request: array
array of regex that will be matched in fileencoding:? string
read stream encoding (default:utf8
)join: string
number of chunk combined (default: 2), increasing the number will widen the matching chunk boundaries
The results is promise contains report: array
An array of objects. Each element contains three keys:
isFound: Boolean
search resultreg: string
regex sent in requestmatch: array
matching result. An array if there are results otherwise returns null. for more see String.prototype.match()
Examples
const find = require("find-in");
// let's create some request to search for it in our file.
const req = [/old/g, /new/g];
const report = await find({ path: "/path/to/fileName", request: req });
// > report:
//
// [
// {
// isFound: true,
// reg: /old/g,
// match: ["old"], // the result of matching
// },
// {
// isFound: false, // not found so it wasn't changed
// reg: /new/g,
// match: null,
// },
// ];
Or you can check a specific result as following.
const report = await find({
path: "/path/to/fileName",
request: [phrase0, phrase1, phrase2, phrase3],
});
if (report[2].isFound) {
console.log("found phrase2!");
// do something
} else {
console.log("phrase2 is not found!");
// do something else
}
Tests
Related projects
License
This project is licensed under the MIT License
I am only writing to make you understand what a really good experience my wife’s princess obtained viewing your webblog. She noticed some things, which included what it is like to possess an ideal teaching spirit to make others without difficulty learn about specific tortuous things. You undoubtedly surpassed readers’ expected results. Thanks for rendering those productive, trusted, informative as well as unique tips on your topic to Mary.