eslint-plugin-regexp
Advanced tools
Comparing version
@@ -144,3 +144,3 @@ "use strict"; | ||
} | ||
if (/^\\c[a-zA-Z]$/u.test(cNode.raw)) { | ||
if (/^\\c[A-Za-z]$/u.test(cNode.raw)) { | ||
verifyCharacterInControl(node, cNode); | ||
@@ -147,0 +147,0 @@ } |
@@ -97,3 +97,3 @@ "use strict"; | ||
element.type === "CharacterClassRange") { | ||
if (/^[.*+?${()|[/]$/u.test(text) || | ||
if (/^[$(-+./?[{|]$/u.test(text) || | ||
(flags.includes("u") && text === "}")) { | ||
@@ -100,0 +100,0 @@ text = utils_1.fixerApplyEscape("\\", node) + text; |
@@ -85,3 +85,5 @@ "use strict"; | ||
} | ||
yield fixer.insertTextBeforeRange(targetRange, next.raw); | ||
yield fixer.insertTextBeforeRange(targetRange, utils_1.fixerApplyEscape((isNeedEscape(next, moveTarget) | ||
? "\\" | ||
: "") + next.raw, node)); | ||
yield fixer.removeRange(nextRange); | ||
@@ -178,1 +180,12 @@ }, | ||
}); | ||
function isNeedEscape(next, target) { | ||
if (!next.raw.startsWith("-")) { | ||
return false; | ||
} | ||
const parent = target.parent; | ||
const prev = parent.elements[parent.elements.indexOf(target) - 1]; | ||
if (prev.type !== "Character" && prev.type !== "CharacterSet") { | ||
return false; | ||
} | ||
return true; | ||
} |
@@ -26,3 +26,3 @@ "use strict"; | ||
if (cNode.value >= 0x10000) { | ||
if (/^(?:\\u[\da-fA-F]{4}){2}$/.test(cNode.raw)) { | ||
if (/^(?:\\u[\dA-Fa-f]{4}){2}$/.test(cNode.raw)) { | ||
context.report({ | ||
@@ -29,0 +29,0 @@ node, |
@@ -91,4 +91,3 @@ "use strict"; | ||
} | ||
if (/(?:\(|\\|\[|\{|\||\+|\?|\*)/.test(a.raw) || | ||
/(?:\(|\\|\[|\{|\||\+|\?|\*)/.test(b.raw)) { | ||
if (/[(*+?[\\{|]/.test(a.raw) || /[(*+?[\\{|]/.test(b.raw)) { | ||
return EQUALS_CHECKER[a.type](a, b, shortCircuit); | ||
@@ -95,0 +94,0 @@ } |
{ | ||
"name": "eslint-plugin-regexp", | ||
"version": "0.4.0", | ||
"version": "0.4.1", | ||
"description": "ESLint plugin for finding RegExp mistakes and RegExp style guide violations.", | ||
@@ -67,3 +67,3 @@ "main": "dist/index.js", | ||
"eslint-plugin-prettier": "^3.3.1", | ||
"eslint-plugin-regexp": "^0.3.0", | ||
"eslint-plugin-regexp": "^0.4.0", | ||
"eslint-plugin-vue": "^7.5.0", | ||
@@ -70,0 +70,0 @@ "eslint-plugin-yml": "^0.7.0", |
232343
0.19%5698
0.21%