Переименование атрибутов приводит к использованию последовательных значений

#visual-studio-code #rename #sequential-number

Вопрос:

Я столкнулся с проблемой с результатами атрибутов SVG. Мне нужно переименовать несколько результатов атрибута SVG в последовательной форме.

 xlink:hreef-"#path-1"
xlink:hreef-"#path-2"
xlink:hreef-"#path-3"
...
 

Как я могу это автоматизировать? Существует плагин или расширение VSCode, которые могут мне помочь?

Заранее спасибо!

Alves, Luiz.

Комментарии:

1. пожалуйста, объясните, что было раньше и чего вы хотите в результате

Ответ №1:

Вы можете сделать это с помощью этого расширения, которое я написал: Найти и преобразовать, и эта привязка клавиш:

 {
  "key": "shift alt s",             whatever keybinding you want
  "command": "findInCurrentFile",
  "args": {
    "find": "(xlink:href-"#path)",
    "replace": "$1-${matchNumber}",
    "isRegex": true,
  }
}
 

Он найдет (xlink:href-"#path) , заменит его $1 собой и добавит -${matchNumber} к нему. Таким образом , первый матч получит a 1 , второй матч a 2 и так далее.

Если бы вы хотели, чтобы они были основаны на 0, вы могли бы использовать ${matchIndex} их вместо этого.

демонстрация поиска и преобразования с помощью matchIndex

Комментарии:

1. Вы можете легко изменить find его, если начинаете с чего-то другого.

Ответ №2:

Вы можете использовать генератор текста регулярных выражений расширения

Найдите и выберите все элементы, которые вы хотите переименовать

Найти xlink:hreef

Выберите > >Выберите Все Вхождения

Теперь переместите несколько курсоров и выберите деталь, которую необходимо заменить.

Затем выполните команду: Сгенерируйте текст на основе регулярного выражения

Для выражения генератора используйте: {{=i 1}} если вы хотите, чтобы нумерация начиналась с 1.

Вы получаете предварительный просмотр того, каков будет результат.