A simple CLI/Module for regex replacing strings in files & renaming files recursively
npm install regex-replace  
local: npm install regex-replace
global: npm install -g regex-replace
###### CLI Example
Replace filenames and file contents
``bash`
regex-replace 'search string' 'replace string' './path/to/recursively/replace'
Replace file content only
`bash`
regex-replace 'search string' 'replace string' './path/to/recursively/replace' --filecontents
Replace filenames only
`bash`
regex-replace 'search string' 'replace string' './path/to/recursively/replace' --filenames
Version
`bash`
regex-replace -v
###### Module Example
`javascript
import regexReplace from 'regex-replace';
const searchString = 'string to search for';
const replaceString = 'string to replace with';
const path = './some/path/to/recursively/replace';
const options = {
filenamesOnly: false, //default
fileContentsOnly: false //default
};
//promise
regexReplace(searchString, replaceString, path, options)
.then(() => {
//do something after successful regex replace
})
.catch((err) => {
//handle errors
});
//async/await
const doRegexReplace = async function() {
try {
await regexReplace(searchString, replaceString, path, options);
} catch (err) {
console.error('err > regexReplace > testing', err);
}
}
//callback (no support for callbacks currently)
`
- Node JS >= 6.x.x
- Yarn (optional but recommended)
- Flags:
- --filename or --filenames For filenames only
- --filecontent or --filecontents For file contents only###### Module Example
`javascript
regexReplace(searchString, replaceString, path, options)
`- Returns _promise_
- Options:
- filenamesOnly:
false default
- fileContentsOnly: false default
Running the tests
- Fork or clone
- cd into regex-replace
- run yarn or npm install
- npm test`Please read CONTRIBUTING.md for details on code of conduct, and the process for submitting pull requests.
SemVer is used for versioning. For the versions available, see the releases on this repository.
See also the list of contributors who participated in this project.
This project is licensed under the MIT license.