Skip to content

Improve sql obfuscation regular expressions #2861

Closed
@jsumners-nr

Description

@jsumners-nr

// eslint-disable-next-line sonarjs/slow-regex
const singleQuote = /'(?:''|[^'])*?(?:\\'.*|'(?!'))/
// eslint-disable-next-line sonarjs/slow-regex
const doubleQuote = /"(?:[^"]|"")*?(?:\\".*|"(?!"))/
const dollarQuote = /(\$(?!\d)[^$]*?\$).*?(?:\1|$)/
const oracleQuote = /q'\[.*?(?:\]'|$)|q'\{.*?(?:\}'|$)|q'<.*?(?:>'|$)|q'\(.*?(?:\)'|$)/
// eslint-disable-next-line sonarjs/slow-regex
const comment = /(?:#|--).*?(?=\r|\n|$)/

// ( ` database` . ` table ` )
// eslint-disable-next-line sonarjs/slow-regex
const CLEANER = /^\(?(?:([`'"]?)(.*?)\1\.)?([`'"]?)(.*?)\3\)?$/

These regular expressions are triggering sonar-js's "slow regex" rule. We need to investigate what the regular expressions do, and see if we can improve them.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

  • Status

    Done: Issues recently completed

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions