Skip to content

aminya/eslint-plugin-optimize-regex

 
 

Repository files navigation

eslint-plugin-optimize-regex

npm npm

Optimize regex literals

Installation

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.

Usage for Eslint 9 and above

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]

Usage for Eslint 8 and below

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"]
}

Rules

Inspiration

License

MIT © Ezinwa Okpoechi

About

Optimize regex literals

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 96.2%
  • Makefile 2.0%
  • Dockerfile 1.8%