Optimize regex literals
You'll first need to install ESLint:
npm i eslint --save-dev
Next, install eslint-plugin-optimize-regex:
npm install eslint-plugin-optimize-regex --save-dev
Note: If you installed ESLint globally (using the -g flag) then you must also install eslint-plugin-optimize-regex globally.
Add the following to your eslint.config.mjs
import pluginOptimizeRegex from "eslint-plugin-optimize-regex";
/** @type {import("eslint").Linter.FlatConfig[]} */
export default [pluginOptimizeRegex.configs.recommended];or the following to your eslint.config.cjs
const pluginOptimizeRegex = require("eslint-plugin-optimize-regex").default
module.exports = [pluginOptimizeRegex.configs.recommended]Add optimize-regex to the plugins section of your .eslintrc configuration file. You can omit the eslint-plugin- prefix:
{
"plugins": [
"optimize-regex"
]
}Then configure the rules you want to use under the rules section.
{
"rules": {
"optimize-regex/optimize-regex": "warn"
}
}If you wish to add a whitelist or blacklist array against regexp-tree's
transforms, you can add them on an objects object:
{
"rules": {
"optimize-regex/optimize-regex": ["warn", {
"blacklist": ["charClassClassrangesMerge"]
}]
}
}If you want the latter particular settings, you can avoid setting plugins and
rules and just use:
{
"extends": ["optimize-regex/recommended-legacy"]
}Or without the blacklist:
{
"extends": ["optimize-regex/all-legacy"]
}MIT © Ezinwa Okpoechi