Node text search in files
npm install find-in
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.
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()
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
}
yarn test
-
textics & textics-stream - counts lines, words, chars and spaces for a given string.
-
replace-in - Replace text in a given file.
-
packageSorter - Sorting packages for monorepos production.
-
builderz - Building your project with zero config.
-
corename - Extracts package name.
-
move-position - Moves element in given array form index-A to index-B.
This project is licensed under the MIT License