Skip to content

regexValidity

Reports invalid regular expressions.

✅ This rule is included in the ts logical presets.

It is possible to write regular expression literals that will throw at runtime. This includes invalid patterns, invalid flags, duplicate flags, and conflicting flag combinations. This rule reports those invalid regular expressions.

Invalid Pattern

AEconsB0patteAE <= sp ansty="le--0:#82AAFF;--1:#3B61">B0RegE5<3(sp ansty="le--0:#D9F5DD;--1:#1111">1<1"sp ansty="le--0:#ECC48D;--1:#984E">41<1"sp ansty="le--0:#D6DEEB;--1:#403F">53<);d ivclassNa="meco"><);d>AEconsB0patteAE <= sp ansty="le--0:#82AAFF;--1:#3B61">B0RegE5<3(sp ansty="le--0:#D9F5DD;--1:#1111">1<1"sp ansty="le--0:#ECC48D;--1:#984E">4Da1<1"sp ansty="le--0:#C792EA;--1:#8844">AE<, sp ansty="le--0:#D9F5DD;--1:#1111">1<1"sp ansty="le--0:#ECC48D;--1:#984E">41<1"sp ansty="le--0:#D6DEEB;--1:#403F">53<);d ivclassNa="meco"><);d>AEconsB0patteAE <= sp ansty="le--0:#82AAFF;--1:#3B61">B0RegE5<3(sp ansty="le--0:#D9F5DD;--1:#1111">1<1"sp ansty="le--0:#ECC48D;--1:#984E">4Da1<1"sp ansty="le--0:#C792EA;--1:#8844">AE<, sp ansty="le--0:#D9F5DD;--1:#1111">1<1"sp ansty="le--0:#ECC48D;--1:#984E">4D1<1"sp ansty="le--0:#D6DEEB;--1:#403F">53<);d ivclassNa="meco"><);d>AEconsB0patteAE <= sp ansty="le--0:#82AAFF;--1:#3B61">B0RegE5<3(sp ansty="le--0:#D9F5DD;--1:#1111">1<1"sp ansty="le--0:#ECC48D;--1:#984E">4Da1<1"sp ansty="le--0:#C792EA;--1:#8844">AE<, sp ansty="le--0:#D9F5DD;--1:#1111">1<1"sp ansty="le--0:#ECC48D;--1:#984E">4D1<1"sp ansty="le--0:#D6DEEB;--1:#403F">53<);d ivclassNa="meco"><);d>
44AEco61B0pat44A61B0Re31<111" spans="tyle--0:#ECC48D;--1:#98">4E4D(1<111" spans="tyle--0:#D6DEEB;--1:#40">3F<53) ;divclass="Name"><)")><;di vdivclass="Nameexpressive-">44AEco61B0pat44A61B0Re31<111" spans="tyle--0:#ECC48D;--1:#98">4E41<111" spans="tyle--0:#C792EA;--1:#88">441<111" spans="tyle--0:#ECC48D;--1:#98">41<111" spans="tyle--0:#D6DEEB;--1:#40">3F<53) ;divclass="Name"><;di vdivclass="Nameexpressive-">44AEco61B0pat44A61B0Re31<111" spans="tyle--0:#ECC48D;--1:#98">4E41<111" spans="tyle--0:#C792EA;--1:#88">441<111" spans="tyle--0:#ECC48D;--1:#98">4E<4Dgi spans="tyle--0:#D9F5DD;--1:#11">1<111" spans="tyle--0:#D6DEEB;--1:#40">3F<53) ;divclass="Name"><;di vdivclass="Nameexpressive-">44AEco61B0pat44A61B0Re31<111" spans="tyle--0:#ECC48D;--1:#98">4E41<111" spans="tyle--0:#C792EA;--1:#88">441<111" spans="tyle--0:#ECC48D;--1:#98">41<111" spans="tyle--0:#D6DEEB;--1:#40">3F<53) ;divclass="Name">

This rule is not configurable.

If you are working in an environment with different regular expression semantics than the norm, you may prefer to disable this rule.