prefer-named-capture-group
Требует использовать именованные группы захвата в регулярных выражениях
Некоторые проблемы, о которых сообщает это правило, можно исправить вручную с помощью предложений редактора
Описание правила
С появлением ECMAScript 2018 в регулярных выражениях можно использовать именованные группы захвата, что повышает их читаемость. Это правило рекомендует использовать именованные группы захвата вместо пронумерованных в регулярных выражениях:
const regex = /(?<year>[0-9]{4})/;
Если же вы не собираетесь захватывать результаты, а хотите лишь указать альтернативу, используйте группу без захвата:
const regex = /(?:cauli|sun)flower/;
Примеры неправильного кода для этого правила:
/*eslint prefer-named-capture-group: "error"*/
const foo = ;
const bar = ;
const baz = ;
foo.exec('bar')[1]; // Retrieve the group result.
Примеры правильного кода для этого правила:
/*eslint prefer-named-capture-group: "error"*/
const foo = /(?<id>ba[rz])/;
const bar = new RegExp('(?<id>ba[rz])');
const baz = RegExp('(?<id>ba[rz])');
const xyz = /xyz(?:zy|abc)/;
foo.exec('bar').groups.id; // Retrieve the group result.
Параметры
У этого правила нет параметров.
Когда не следует использовать это правило
Если вы ориентируетесь на ECMAScript 2017 или более старые среды, не используйте это правило, поскольку эта возможность ECMAScript поддерживается только в ECMAScript 2018 и более новых средах.
Связанные правила
Версия
Это правило появилось в ESLint v5.15.0.
Ресурсы
© OpenJS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/latest/rules/prefer-named-capture-group